deltacat 1.1.29__tar.gz → 1.1.30__tar.gz
Sign up to get free protection for your applications and to get access to all the features.
- {deltacat-1.1.29/deltacat.egg-info → deltacat-1.1.30}/PKG-INFO +1 -1
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/__init__.py +1 -1
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/utils/test_pyarrow.py +52 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/utils/pyarrow.py +10 -0
- {deltacat-1.1.29 → deltacat-1.1.30/deltacat.egg-info}/PKG-INFO +1 -1
- {deltacat-1.1.29 → deltacat-1.1.30}/LICENSE +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/MANIFEST.in +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/README.md +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/aws/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/aws/clients.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/aws/constants.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/aws/redshift/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/aws/redshift/model/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/aws/redshift/model/manifest.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/aws/s3u.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/benchmarking/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/benchmarking/benchmark_parquet_reads.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/benchmarking/conftest.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/catalog/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/catalog/default_catalog_impl/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/catalog/delegate.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/catalog/interface.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/catalog/model/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/catalog/model/catalog.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/catalog/model/table_definition.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/compaction_session.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/model/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/model/compact_partition_params.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/model/compaction_session_audit_info.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/model/compactor_version.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/model/dedupe_result.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/model/delta_annotated.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/model/delta_file_envelope.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/model/delta_file_locator.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/model/hash_bucket_result.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/model/materialize_result.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/model/primary_key_index.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/model/pyarrow_write_result.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/model/repartition_result.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/model/round_completion_info.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/model/table_object_store.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/repartition_session.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/steps/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/steps/dedupe.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/steps/hash_bucket.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/steps/materialize.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/steps/repartition.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/utils/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/utils/io.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/utils/primary_key_index.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/utils/round_completion_file.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/utils/sort_key.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/utils/system_columns.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/compaction_session.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/constants.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/deletes/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/deletes/delete_file_envelope.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/deletes/delete_strategy.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/deletes/delete_strategy_equality_delete.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/deletes/model.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/deletes/utils.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/model/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/model/evaluate_compaction_result.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/model/hash_bucket_input.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/model/hash_bucket_result.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/model/merge_file_group.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/model/merge_input.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/model/merge_result.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/private/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/private/compaction_utils.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/steps/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/steps/hash_bucket.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/steps/merge.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/utils/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/utils/content_type_params.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/utils/dedupe.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/utils/delta.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/utils/io.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/utils/merge.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/utils/primary_key_index.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/utils/task_options.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/merge_on_read/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/merge_on_read/daft.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/merge_on_read/model/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/merge_on_read/model/merge_on_read_params.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/merge_on_read/utils/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/merge_on_read/utils/delta.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/resource_estimation/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/resource_estimation/delta.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/resource_estimation/manifest.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/resource_estimation/model.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/resource_estimation/parquet.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/stats/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/stats/models/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/stats/models/delta_column_stats.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/stats/models/delta_stats.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/stats/models/delta_stats_cache_result.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/stats/models/manifest_entry_stats.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/stats/models/stats_result.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/stats/types.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/constants.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/exceptions.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/io/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/io/aws/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/io/aws/redshift/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/io/dataset.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/io/file_object_store.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/io/memcached_object_store.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/io/object_store.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/io/ray_plasma_object_store.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/io/read_api.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/io/redis_object_store.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/io/s3_object_store.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/logs.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/storage/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/storage/interface.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/storage/model/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/storage/model/delete_parameters.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/storage/model/delta.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/storage/model/list_result.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/storage/model/locator.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/storage/model/namespace.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/storage/model/partition.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/storage/model/partition_spec.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/storage/model/sort_key.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/storage/model/stream.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/storage/model/table.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/storage/model/table_version.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/storage/model/transform.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/storage/model/types.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/aws/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/aws/test_clients.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/aws/test_s3u.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/catalog/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/catalog/test_default_catalog_impl.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/compact_partition_multiple_rounds_test_cases.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/compact_partition_rebase_test_cases.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/compact_partition_rebase_then_incremental_test_cases.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/compact_partition_test_cases.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/compactor/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/compactor/steps/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/compactor/steps/test_repartition.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/compactor/utils/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/compactor/utils/test_io.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/compactor/utils/test_round_completion_file.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/compactor_v2/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/compactor_v2/test_compaction_session.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/compactor_v2/test_hashlib.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/compactor_v2/utils/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/compactor_v2/utils/test_primary_key_index.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/compactor_v2/utils/test_task_options.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/resource_estimation/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/resource_estimation/data/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/resource_estimation/test_delta.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/resource_estimation/test_manifest.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/test_compact_partition_incremental.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/test_compact_partition_multiple_rounds.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/test_compact_partition_params.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/test_compact_partition_rebase.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/test_compact_partition_rebase_then_incremental.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/test_util_common.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/test_util_constant.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/test_util_create_table_deltas_repo.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/io/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/io/test_cloudpickle_bug_fix.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/io/test_file_object_store.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/io/test_memcached_object_store.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/io/test_ray_plasma_object_store.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/io/test_redis_object_store.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/io/test_s3_object_store.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/local_deltacat_storage/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/local_deltacat_storage/exceptions.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/test_exceptions.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/test_logs.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/test_utils/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/test_utils/constants.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/test_utils/pyarrow.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/test_utils/storage.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/test_utils/utils.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/utils/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/utils/data/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/utils/ray_utils/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/utils/ray_utils/test_concurrency.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/utils/ray_utils/test_dataset.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/utils/test_cloudpickle.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/utils/test_daft.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/utils/test_metrics.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/utils/test_placement.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/utils/test_record_batch_tables.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/utils/test_resources.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/types/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/types/media.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/types/partial_download.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/types/tables.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/utils/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/utils/arguments.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/utils/cloudpickle.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/utils/common.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/utils/daft.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/utils/metrics.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/utils/numpy.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/utils/pandas.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/utils/performance.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/utils/placement.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/utils/ray_utils/__init__.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/utils/ray_utils/collections.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/utils/ray_utils/concurrency.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/utils/ray_utils/dataset.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/utils/ray_utils/performance.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/utils/ray_utils/runtime.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/utils/resources.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/utils/s3fs.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat/utils/schema.py +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat.egg-info/SOURCES.txt +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat.egg-info/dependency_links.txt +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat.egg-info/requires.txt +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/deltacat.egg-info/top_level.txt +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/setup.cfg +0 -0
- {deltacat-1.1.29 → deltacat-1.1.30}/setup.py +0 -0
@@ -8,6 +8,7 @@ from deltacat.utils.pyarrow import (
|
|
8
8
|
ReadKwargsProviderPyArrowSchemaOverride,
|
9
9
|
RAISE_ON_EMPTY_CSV_KWARG,
|
10
10
|
RAISE_ON_DECIMAL_OVERFLOW,
|
11
|
+
OVERRIDE_CONTENT_ENCODING_FOR_PARQUET_KWARG,
|
11
12
|
)
|
12
13
|
import decimal
|
13
14
|
from deltacat.types.media import ContentEncoding, ContentType
|
@@ -812,3 +813,54 @@ class TestS3FileToTable(TestCase):
|
|
812
813
|
schema = result.schema
|
813
814
|
schema_index = schema.get_field_index("n_legs")
|
814
815
|
self.assertEqual(schema.field(schema_index).type, "int64")
|
816
|
+
|
817
|
+
def test_s3_file_to_table_when_utsv_gzip_and_content_type_overridden(self):
|
818
|
+
schema = pa.schema(
|
819
|
+
[("is_active", pa.string()), ("ship_datetime_utc", pa.timestamp("us"))]
|
820
|
+
)
|
821
|
+
|
822
|
+
# OVERRIDE_CONTENT_ENCODING_FOR_PARQUET_KWARG has no effect on uTSV files
|
823
|
+
pa_kwargs_provider = lambda content_type, kwargs: {
|
824
|
+
"reader_type": "pyarrow",
|
825
|
+
OVERRIDE_CONTENT_ENCODING_FOR_PARQUET_KWARG: ContentEncoding.IDENTITY.value,
|
826
|
+
**kwargs,
|
827
|
+
}
|
828
|
+
|
829
|
+
result = s3_file_to_table(
|
830
|
+
GZIP_COMPRESSED_FILE_UTSV_PATH,
|
831
|
+
ContentType.UNESCAPED_TSV.value,
|
832
|
+
ContentEncoding.GZIP.value,
|
833
|
+
["is_active", "ship_datetime_utc"],
|
834
|
+
None,
|
835
|
+
pa_read_func_kwargs_provider=pa_kwargs_provider,
|
836
|
+
)
|
837
|
+
|
838
|
+
self.assertEqual(len(result), 3)
|
839
|
+
self.assertEqual(len(result.column_names), 2)
|
840
|
+
result_schema = result.schema
|
841
|
+
for index, field in enumerate(result_schema):
|
842
|
+
self.assertEqual(field.name, schema.field(index).name)
|
843
|
+
|
844
|
+
self.assertEqual(result.schema.field(0).type, "string")
|
845
|
+
|
846
|
+
def test_s3_file_to_table_when_parquet_gzip_and_encoding_overridden(self):
|
847
|
+
pa_kwargs_provider = lambda content_type, kwargs: {
|
848
|
+
"reader_type": "pyarrow",
|
849
|
+
OVERRIDE_CONTENT_ENCODING_FOR_PARQUET_KWARG: ContentEncoding.IDENTITY.value,
|
850
|
+
**kwargs,
|
851
|
+
}
|
852
|
+
|
853
|
+
result = s3_file_to_table(
|
854
|
+
PARQUET_FILE_PATH,
|
855
|
+
ContentType.PARQUET.value,
|
856
|
+
ContentEncoding.GZIP.value,
|
857
|
+
["n_legs", "animal"],
|
858
|
+
["n_legs"],
|
859
|
+
pa_read_func_kwargs_provider=pa_kwargs_provider,
|
860
|
+
)
|
861
|
+
|
862
|
+
self.assertEqual(len(result), 6)
|
863
|
+
self.assertEqual(len(result.column_names), 1)
|
864
|
+
schema = result.schema
|
865
|
+
schema_index = schema.get_field_index("n_legs")
|
866
|
+
self.assertEqual(schema.field(schema_index).type, "int64")
|
@@ -47,6 +47,7 @@ logger = logs.configure_deltacat_logger(logging.getLogger(__name__))
|
|
47
47
|
|
48
48
|
RAISE_ON_EMPTY_CSV_KWARG = "raise_on_empty_csv"
|
49
49
|
READER_TYPE_KWARG = "reader_type"
|
50
|
+
OVERRIDE_CONTENT_ENCODING_FOR_PARQUET_KWARG = "override_content_encoding_for_parquet"
|
50
51
|
|
51
52
|
"""
|
52
53
|
By default, round decimal values using half_to_even round mode when
|
@@ -543,6 +544,15 @@ def s3_file_to_table(
|
|
543
544
|
if pa_read_func_kwargs_provider is not None:
|
544
545
|
kwargs = pa_read_func_kwargs_provider(content_type, kwargs)
|
545
546
|
|
547
|
+
if OVERRIDE_CONTENT_ENCODING_FOR_PARQUET_KWARG in kwargs:
|
548
|
+
new_content_encoding = kwargs.pop(OVERRIDE_CONTENT_ENCODING_FOR_PARQUET_KWARG)
|
549
|
+
if content_type == ContentType.PARQUET.value:
|
550
|
+
logger.debug(
|
551
|
+
f"Overriding {s3_url} content encoding from {content_encoding} "
|
552
|
+
f"to {new_content_encoding}"
|
553
|
+
)
|
554
|
+
content_encoding = new_content_encoding
|
555
|
+
|
546
556
|
if (
|
547
557
|
content_type == ContentType.PARQUET.value
|
548
558
|
and content_encoding == ContentEncoding.IDENTITY.value
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/model/compact_partition_params.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/model/pyarrow_write_result.py
RENAMED
File without changes
|
File without changes
|
{deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/model/round_completion_info.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor/utils/round_completion_file.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/deletes/delete_file_envelope.py
RENAMED
File without changes
|
{deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/deletes/delete_strategy.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/model/hash_bucket_input.py
RENAMED
File without changes
|
{deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/model/hash_bucket_result.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/private/compaction_utils.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/utils/content_type_params.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/compactor_v2/utils/primary_key_index.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/merge_on_read/model/merge_on_read_params.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{deltacat-1.1.29 → deltacat-1.1.30}/deltacat/compute/stats/models/delta_stats_cache_result.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/compact_partition_rebase_test_cases.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/compactor/steps/test_repartition.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/compactor_v2/test_compaction_session.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/compactor_v2/utils/test_task_options.py
RENAMED
File without changes
|
File without changes
|
{deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/resource_estimation/data/__init__.py
RENAMED
File without changes
|
{deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/resource_estimation/test_delta.py
RENAMED
File without changes
|
{deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/resource_estimation/test_manifest.py
RENAMED
File without changes
|
{deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/test_compact_partition_incremental.py
RENAMED
File without changes
|
{deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/test_compact_partition_multiple_rounds.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{deltacat-1.1.29 → deltacat-1.1.30}/deltacat/tests/compute/test_util_create_table_deltas_repo.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|