vastdb 0.1.0__tar.gz → 0.1.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (183) hide show
  1. vastdb-0.1.1/CHANGELOG.md +95 -0
  2. vastdb-0.1.1/MANIFEST.in +1 -0
  3. {vastdb-0.1.0 → vastdb-0.1.1}/PKG-INFO +1 -1
  4. {vastdb-0.1.0 → vastdb-0.1.1}/setup.py +3 -2
  5. vastdb-0.1.1/vastdb/bench/test_perf.py +29 -0
  6. {vastdb-0.1.0 → vastdb-0.1.1}/vastdb/bucket.py +14 -6
  7. {vastdb-0.1.0/vastdb/tests → vastdb-0.1.1/vastdb}/conftest.py +21 -7
  8. {vastdb-0.1.0 → vastdb-0.1.1}/vastdb/errors.py +20 -3
  9. {vastdb-0.1.0 → vastdb-0.1.1}/vastdb/internal_commands.py +105 -141
  10. {vastdb-0.1.0 → vastdb-0.1.1}/vastdb/schema.py +14 -6
  11. {vastdb-0.1.0 → vastdb-0.1.1}/vastdb/session.py +2 -3
  12. {vastdb-0.1.0 → vastdb-0.1.1}/vastdb/table.py +16 -13
  13. vastdb-0.1.1/vastdb/tests/__init__.py +0 -0
  14. {vastdb-0.1.0 → vastdb-0.1.1}/vastdb/tests/test_imports.py +3 -5
  15. vastdb-0.1.1/vastdb/tests/test_nested.py +28 -0
  16. {vastdb-0.1.0 → vastdb-0.1.1}/vastdb/tests/test_projections.py +2 -1
  17. {vastdb-0.1.0 → vastdb-0.1.1}/vastdb/tests/test_sanity.py +3 -4
  18. {vastdb-0.1.0 → vastdb-0.1.1}/vastdb/tests/test_schemas.py +18 -0
  19. {vastdb-0.1.0 → vastdb-0.1.1}/vastdb/tests/test_tables.py +78 -31
  20. vastdb-0.1.1/vastdb/tests/util.py +18 -0
  21. {vastdb-0.1.0 → vastdb-0.1.1}/vastdb/transaction.py +3 -4
  22. {vastdb-0.1.0 → vastdb-0.1.1}/vastdb/util.py +4 -3
  23. {vastdb-0.1.0 → vastdb-0.1.1}/vastdb.egg-info/PKG-INFO +1 -1
  24. {vastdb-0.1.0 → vastdb-0.1.1}/vastdb.egg-info/SOURCES.txt +9 -2
  25. vastdb-0.1.1/vastdb.egg-info/requires.txt +7 -0
  26. {vastdb-0.1.0 → vastdb-0.1.1}/LICENSE +0 -0
  27. {vastdb-0.1.0 → vastdb-0.1.1}/README.md +0 -0
  28. /vastdb-0.1.0/vastdb.egg-info/requires.txt → /vastdb-0.1.1/requirements.txt +0 -0
  29. {vastdb-0.1.0 → vastdb-0.1.1}/setup.cfg +0 -0
  30. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/__init__.py +0 -0
  31. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/__init__.py +0 -0
  32. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/__init__.py +0 -0
  33. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/__init__.py +0 -0
  34. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/__init__.py +0 -0
  35. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Aggregate.py +0 -0
  36. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/ArraySlice.py +0 -0
  37. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/ArraySubscript.py +0 -0
  38. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/BinaryLiteral.py +0 -0
  39. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/BooleanLiteral.py +0 -0
  40. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Bound.py +0 -0
  41. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Call.py +0 -0
  42. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/CaseFragment.py +0 -0
  43. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Cast.py +0 -0
  44. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/ConcreteBoundImpl.py +0 -0
  45. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/ConditionalCase.py +0 -0
  46. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/CurrentRow.py +0 -0
  47. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/DateLiteral.py +0 -0
  48. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/DecimalLiteral.py +0 -0
  49. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Deref.py +0 -0
  50. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/DurationLiteral.py +0 -0
  51. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Expression.py +0 -0
  52. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/ExpressionImpl.py +0 -0
  53. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/FieldIndex.py +0 -0
  54. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/FieldRef.py +0 -0
  55. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Filter.py +0 -0
  56. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/FixedSizeBinaryLiteral.py +0 -0
  57. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Float16Literal.py +0 -0
  58. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Float32Literal.py +0 -0
  59. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Float64Literal.py +0 -0
  60. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Following.py +0 -0
  61. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Frame.py +0 -0
  62. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Grouping.py +0 -0
  63. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Int16Literal.py +0 -0
  64. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Int32Literal.py +0 -0
  65. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Int64Literal.py +0 -0
  66. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Int8Literal.py +0 -0
  67. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/IntervalLiteral.py +0 -0
  68. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/IntervalLiteralDaysMilliseconds.py +0 -0
  69. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/IntervalLiteralImpl.py +0 -0
  70. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/IntervalLiteralMonths.py +0 -0
  71. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Join.py +0 -0
  72. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/JoinKind.py +0 -0
  73. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/KeyValue.py +0 -0
  74. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Limit.py +0 -0
  75. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/ListLiteral.py +0 -0
  76. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Literal.py +0 -0
  77. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/LiteralColumn.py +0 -0
  78. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/LiteralImpl.py +0 -0
  79. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/LiteralRelation.py +0 -0
  80. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/MapKey.py +0 -0
  81. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/MapLiteral.py +0 -0
  82. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/OrderBy.py +0 -0
  83. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Ordering.py +0 -0
  84. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Plan.py +0 -0
  85. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Preceding.py +0 -0
  86. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Project.py +0 -0
  87. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/RelId.py +0 -0
  88. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Relation.py +0 -0
  89. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/RelationImpl.py +0 -0
  90. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/SetOpKind.py +0 -0
  91. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/SetOperation.py +0 -0
  92. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/SimpleCase.py +0 -0
  93. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/SortKey.py +0 -0
  94. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Source.py +0 -0
  95. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/StringLiteral.py +0 -0
  96. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/StructField.py +0 -0
  97. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/StructLiteral.py +0 -0
  98. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/TimeLiteral.py +0 -0
  99. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/TimestampLiteral.py +0 -0
  100. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/UInt16Literal.py +0 -0
  101. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/UInt32Literal.py +0 -0
  102. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/UInt64Literal.py +0 -0
  103. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/UInt8Literal.py +0 -0
  104. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/Unbounded.py +0 -0
  105. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/WindowCall.py +0 -0
  106. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/computeir/flatbuf/__init__.py +0 -0
  107. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/Binary.py +0 -0
  108. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/Block.py +0 -0
  109. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/BodyCompression.py +0 -0
  110. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/BodyCompressionMethod.py +0 -0
  111. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/Bool.py +0 -0
  112. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/Buffer.py +0 -0
  113. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/CompressionType.py +0 -0
  114. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/Date.py +0 -0
  115. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/DateUnit.py +0 -0
  116. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/Decimal.py +0 -0
  117. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/DictionaryBatch.py +0 -0
  118. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/DictionaryEncoding.py +0 -0
  119. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/DictionaryKind.py +0 -0
  120. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/Duration.py +0 -0
  121. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/Endianness.py +0 -0
  122. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/Feature.py +0 -0
  123. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/Field.py +0 -0
  124. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/FieldNode.py +0 -0
  125. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/FixedSizeBinary.py +0 -0
  126. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/FixedSizeList.py +0 -0
  127. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/FloatingPoint.py +0 -0
  128. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/Footer.py +0 -0
  129. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/Int.py +0 -0
  130. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/Interval.py +0 -0
  131. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/IntervalUnit.py +0 -0
  132. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/KeyValue.py +0 -0
  133. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/LargeBinary.py +0 -0
  134. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/LargeList.py +0 -0
  135. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/LargeUtf8.py +0 -0
  136. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/List.py +0 -0
  137. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/Map.py +0 -0
  138. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/Message.py +0 -0
  139. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/MessageHeader.py +0 -0
  140. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/MetadataVersion.py +0 -0
  141. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/Null.py +0 -0
  142. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/Precision.py +0 -0
  143. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/RecordBatch.py +0 -0
  144. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/Schema.py +0 -0
  145. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/SparseMatrixCompressedAxis.py +0 -0
  146. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/SparseMatrixIndexCSX.py +0 -0
  147. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/SparseTensor.py +0 -0
  148. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/SparseTensorIndex.py +0 -0
  149. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/SparseTensorIndexCOO.py +0 -0
  150. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/SparseTensorIndexCSF.py +0 -0
  151. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/Struct_.py +0 -0
  152. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/Tensor.py +0 -0
  153. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/TensorDim.py +0 -0
  154. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/Time.py +0 -0
  155. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/TimeUnit.py +0 -0
  156. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/Timestamp.py +0 -0
  157. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/Type.py +0 -0
  158. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/Union.py +0 -0
  159. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/UnionMode.py +0 -0
  160. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/Utf8.py +0 -0
  161. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/org/apache/arrow/flatbuf/__init__.py +0 -0
  162. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/tabular/AlterColumnRequest.py +0 -0
  163. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/tabular/AlterProjectionTableRequest.py +0 -0
  164. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/tabular/AlterSchemaRequest.py +0 -0
  165. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/tabular/AlterTableRequest.py +0 -0
  166. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/tabular/Column.py +0 -0
  167. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/tabular/ColumnType.py +0 -0
  168. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/tabular/CreateProjectionRequest.py +0 -0
  169. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/tabular/CreateSchemaRequest.py +0 -0
  170. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/tabular/GetProjectionTableStatsResponse.py +0 -0
  171. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/tabular/GetTableStatsResponse.py +0 -0
  172. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/tabular/ImportDataRequest.py +0 -0
  173. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/tabular/ListProjectionsResponse.py +0 -0
  174. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/tabular/ListSchemasResponse.py +0 -0
  175. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/tabular/ListTablesResponse.py +0 -0
  176. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/tabular/ObjectDetails.py +0 -0
  177. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/tabular/S3File.py +0 -0
  178. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/tabular/VipRange.py +0 -0
  179. {vastdb-0.1.0 → vastdb-0.1.1}/vast_flatbuf/tabular/__init__.py +0 -0
  180. {vastdb-0.1.0 → vastdb-0.1.1}/vastdb/__init__.py +0 -0
  181. {vastdb-0.1.0/vastdb/tests → vastdb-0.1.1/vastdb/bench}/__init__.py +0 -0
  182. {vastdb-0.1.0 → vastdb-0.1.1}/vastdb.egg-info/dependency_links.txt +0 -0
  183. {vastdb-0.1.0 → vastdb-0.1.1}/vastdb.egg-info/top_level.txt +0 -0
@@ -0,0 +1,95 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
6
+
7
+ ## [0.1.1] (2024-04-15)
8
+ [0.1.1]: https://github.com/vast-data/vastdb_sdk/compare/v0.1.0...v0.1.1
9
+
10
+ ### Added
11
+ - Support date & timestamp predicate pushdown [#25]
12
+
13
+ ### Fixed
14
+ - Add missing `requirements.txt` file to released tarball [#47]
15
+
16
+ ## [0.1.0] (2024-04-11)
17
+ [0.1.0]: https://github.com/vast-data/vastdb_sdk/compare/v0.0.5.3...v0.1.0
18
+
19
+ ### Added
20
+ - Transactions are implemented using [context managers](https://docs.python.org/3/library/stdtypes.html#typecontextmanager)
21
+ - Database entities are derived from a specific transaction
22
+ - Predicate pushdown is using [ibis](https://ibis-project.org/)-like expressions
23
+ - Public SDK [test suite](vastdb/tests/)
24
+ - Internal CI with Python 3.9 - 3.12
25
+ - Using [`ruff`](https://github.com/astral-sh/ruff) for linting and code formatting
26
+ - Improved [`README.md`](README.md) with new API examples
27
+
28
+ ### Removed
29
+
30
+ - Old SDK classes and methods are deprecated
31
+
32
+ ## [0.0.5.3] (2024-03-24)
33
+ [0.0.5.3]: https://github.com/vast-data/vastdb_sdk/compare/v0.0.5.2...v0.0.5.3
34
+
35
+ ### Added
36
+ - Allow changing default max list_columns page size [#43]
37
+
38
+ ### Fixed
39
+ - Fixing insert function to use the correct tx while listing columns [#42]
40
+
41
+ ## [0.0.5.2] (2024-03-19)
42
+ [0.0.5.2]: https://github.com/vast-data/vastdb_sdk/compare/v0.0.5.1...v0.0.5.2
43
+
44
+ ### Added
45
+ - Support retrieving row IDs via `VastdbApi.query()` [#31]
46
+
47
+ ### Fixed
48
+ - Fixed several functions that didn't use the correct txid [#30]
49
+ - Fix graceful cancellation for `VastdbApi.query_iterator()` [#33]
50
+
51
+ ### Removed
52
+ - Remove `vast_protobuf` package and `protobuf` dependency [#29]
53
+
54
+
55
+ ## [0.0.5.1] (2024-03-01)
56
+ [0.0.5.1]: https://github.com/vast-data/vastdb_sdk/compare/v0.0.5.0...v0.0.5.1
57
+
58
+ ### Fixed
59
+ - Support latest Python (3.11+) by not requiring too old dependencies. [#16]
60
+
61
+
62
+ ## [0.0.5.0] (2024-02-25)
63
+ [0.0.5.0]: https://github.com/vast-data/vastdb_sdk/compare/v0.0.4.0...v0.0.5.0
64
+
65
+ ### Added
66
+ - Created a CHANGELOG
67
+
68
+ ### Fixed
69
+ - Wait until all files are processed during import
70
+ - Sync with internal `api.py` code
71
+
72
+
73
+ ## [0.0.4.0] (2024-02-14)
74
+ [0.0.4.0]: https://github.com/vast-data/vastdb_sdk/compare/v0.0.2...v0.0.4.0
75
+
76
+ ### Added
77
+ - Allow creating a table using the schema of an existing Parquet file via `create_table_from_parquet_schema()`
78
+ - Allow inserting RecordBatch into DB via `insert()`
79
+
80
+ ### Changed
81
+ - Rename `vastdb_api` module to `api`
82
+
83
+ ### Fixed
84
+ - Fix `concurrent.futures` import error
85
+
86
+
87
+ [#16]: https://github.com/vast-data/vastdb_sdk/pull/16
88
+ [#25]: https://github.com/vast-data/vastdb_sdk/pull/25
89
+ [#29]: https://github.com/vast-data/vastdb_sdk/pull/29
90
+ [#30]: https://github.com/vast-data/vastdb_sdk/pull/30
91
+ [#31]: https://github.com/vast-data/vastdb_sdk/pull/31
92
+ [#33]: https://github.com/vast-data/vastdb_sdk/pull/33
93
+ [#42]: https://github.com/vast-data/vastdb_sdk/pull/42
94
+ [#43]: https://github.com/vast-data/vastdb_sdk/pull/43
95
+ [#47]: https://github.com/vast-data/vastdb_sdk/pull/47
@@ -0,0 +1 @@
1
+ include *.md LICENSE requirements.txt
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: vastdb
3
- Version: 0.1.0
3
+ Version: 0.1.1
4
4
  Summary: VAST Data SDK
5
5
  Home-page: https://github.com/vast-data/vastdb_sdk
6
6
  Author: VAST DATA
@@ -1,5 +1,6 @@
1
1
  import os
2
- from setuptools import setup, find_packages
2
+
3
+ from setuptools import find_packages, setup
3
4
 
4
5
  long_description = """
5
6
  `vastdb` is a Python-based SDK designed for interacting
@@ -25,7 +26,7 @@ setup(
25
26
  name='vastdb',
26
27
  python_requires='>=3.9.0',
27
28
  description='VAST Data SDK',
28
- version='0.1.0' + suffix,
29
+ version='0.1.1' + suffix,
29
30
  url='https://github.com/vast-data/vastdb_sdk',
30
31
  author='VAST DATA',
31
32
  author_email='hello@vastdata.com',
@@ -0,0 +1,29 @@
1
+ import logging
2
+ import time
3
+
4
+ import pyarrow as pa
5
+ import pytest
6
+
7
+ from vastdb import util
8
+ from vastdb.table import ImportConfig, QueryConfig
9
+
10
+ log = logging.getLogger(__name__)
11
+
12
+
13
+ @pytest.mark.benchmark
14
+ def test_bench(session, clean_bucket_name, parquets_path, crater_path):
15
+ files = [str(parquets_path/f) for f in (parquets_path.glob('**/*.pq'))]
16
+
17
+ with session.transaction() as tx:
18
+ b = tx.bucket(clean_bucket_name)
19
+ s = b.create_schema('s1')
20
+ t = util.create_table_from_files(s, 't1', files, config=ImportConfig(import_concurrency=8))
21
+ config = QueryConfig(num_splits=8, num_sub_splits=4)
22
+ s = time.time()
23
+ pa_table = pa.Table.from_batches(t.select(columns=['sid'], predicate=t['sid'] == 10033007, config=config))
24
+ e = time.time()
25
+ log.info("'SELECT sid from TABLE WHERE sid = 10033007' returned in %s seconds.", e-s)
26
+ if crater_path:
27
+ with open(f'{crater_path}/bench_results', 'a') as f:
28
+ f.write(f"'SELECT sid FROM TABLE WHERE sid = 10033007' returned in {e-s} seconds")
29
+ assert pa_table.num_rows == 255_075
@@ -4,10 +4,10 @@ VAST S3 buckets can be used to create Database schemas and tables.
4
4
  It is possible to list and access VAST snapshots generated over a bucket.
5
5
  """
6
6
 
7
- from . import errors, schema, transaction
8
-
9
- from dataclasses import dataclass
10
7
  import logging
8
+ from dataclasses import dataclass
9
+
10
+ from . import errors, schema, transaction
11
11
 
12
12
  log = logging.getLogger(__name__)
13
13
 
@@ -27,18 +27,26 @@ class Bucket:
27
27
  name: str
28
28
  tx: "transaction.Transaction"
29
29
 
30
- def create_schema(self, path: str) -> "schema.Schema":
30
+ def create_schema(self, path: str, fail_if_exists=True) -> "schema.Schema":
31
31
  """Create a new schema (a container of tables) under this bucket."""
32
+ if current := self.schema(path, fail_if_missing=False):
33
+ if fail_if_exists:
34
+ raise errors.SchemaExists(self.name, path)
35
+ else:
36
+ return current
32
37
  self.tx._rpc.api.create_schema(self.name, path, txid=self.tx.txid)
33
38
  log.info("Created schema: %s", path)
34
39
  return self.schema(path)
35
40
 
36
- def schema(self, path: str) -> "schema.Schema":
41
+ def schema(self, path: str, fail_if_missing=True) -> "schema.Schema":
37
42
  """Get a specific schema (a container of tables) under this bucket."""
38
43
  s = self.schemas(path)
39
44
  log.debug("schema: %s", s)
40
45
  if not s:
41
- raise errors.MissingSchema(self.name, path)
46
+ if fail_if_missing:
47
+ raise errors.MissingSchema(self.name, path)
48
+ else:
49
+ return None
42
50
  assert len(s) == 1, f"Expected to receive only a single schema, but got: {len(s)}. ({s})"
43
51
  log.debug("Found schema: %s", s[0].name)
44
52
  return s[0]
@@ -1,15 +1,19 @@
1
- import vastdb
1
+ import os
2
+ from pathlib import Path
2
3
 
3
- import pytest
4
4
  import boto3
5
- import os
5
+ import pytest
6
+
7
+ import vastdb
6
8
 
7
9
 
8
10
  def pytest_addoption(parser):
9
- parser.addoption("--tabular-bucket-name", help="Name of the S3 bucket with Tabular enabled", default = "vastdb")
10
- parser.addoption("--tabular-access-key", help="Access key with Tabular permissions (AWS_ACCESS_KEY_ID)", default = os.environ.get("AWS_ACCESS_KEY_ID", None))
11
- parser.addoption("--tabular-secret-key", help="Secret key with Tabular permissions (AWS_SECRET_ACCESS_KEY)" , default = os.environ.get("AWS_SECRET_ACCESS_KEY", None))
12
- parser.addoption("--tabular-endpoint-url", help="Tabular server endpoint", default = "http://localhost:9090")
11
+ parser.addoption("--tabular-bucket-name", help="Name of the S3 bucket with Tabular enabled", default="vastdb")
12
+ parser.addoption("--tabular-access-key", help="Access key with Tabular permissions (AWS_ACCESS_KEY_ID)", default=os.environ.get("AWS_ACCESS_KEY_ID", None))
13
+ parser.addoption("--tabular-secret-key", help="Secret key with Tabular permissions (AWS_SECRET_ACCESS_KEY)", default=os.environ.get("AWS_SECRET_ACCESS_KEY", None))
14
+ parser.addoption("--tabular-endpoint-url", help="Tabular server endpoint", default="http://localhost:9090")
15
+ parser.addoption("--data-path", help="Data files location", default=None)
16
+ parser.addoption("--crater-path", help="Save benchmark results in a dedicated location", default=None)
13
17
 
14
18
 
15
19
  @pytest.fixture(scope="session")
@@ -44,3 +48,13 @@ def s3(request):
44
48
  aws_access_key_id=request.config.getoption("--tabular-access-key"),
45
49
  aws_secret_access_key=request.config.getoption("--tabular-secret-key"),
46
50
  endpoint_url=request.config.getoption("--tabular-endpoint-url"))
51
+
52
+
53
+ @pytest.fixture(scope="function")
54
+ def parquets_path(request):
55
+ return Path(request.config.getoption("--data-path"))
56
+
57
+
58
+ @pytest.fixture(scope="function")
59
+ def crater_path(request):
60
+ return request.config.getoption("--crater-path")
@@ -1,9 +1,9 @@
1
1
  import logging
2
- import requests
3
2
  import xml.etree.ElementTree
4
-
5
- from enum import Enum
6
3
  from dataclasses import dataclass
4
+ from enum import Enum
5
+
6
+ import requests
7
7
 
8
8
 
9
9
  class HttpStatus(Enum):
@@ -114,6 +114,23 @@ class MissingProjection(Missing):
114
114
  projection: str
115
115
 
116
116
 
117
+ class Exists(Exception):
118
+ pass
119
+
120
+
121
+ @dataclass
122
+ class SchemaExists(Exists):
123
+ bucket: str
124
+ schema: str
125
+
126
+
127
+ @dataclass
128
+ class TableExists(Exists):
129
+ bucket: str
130
+ schema: str
131
+ table: str
132
+
133
+
117
134
  ERROR_TYPES_MAP = {
118
135
  HttpStatus.BAD_REQUEST: BadRequest,
119
136
  HttpStatus.FOBIDDEN: Forbidden,