micromegas 0.8.0__tar.gz → 0.9.0__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.
- {micromegas-0.8.0 → micromegas-0.9.0}/PKG-INFO +5 -5
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/__init__.py +1 -2
- micromegas-0.9.0/micromegas/flightsql/__init__.py +4 -0
- micromegas-0.9.0/micromegas/flightsql/client.py +195 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/pyproject.toml +3 -4
- micromegas-0.8.0/micromegas/flightsql/FlightSql_pb2_grpc.py +0 -24
- micromegas-0.8.0/micromegas/flightsql/Flight_pb2.py +0 -116
- micromegas-0.8.0/micromegas/flightsql/Flight_pb2_grpc.py +0 -579
- micromegas-0.8.0/micromegas/flightsql/__init__.py +0 -10
- micromegas-0.8.0/micromegas/flightsql/arrow_flatbuffers.py +0 -2925
- micromegas-0.8.0/micromegas/flightsql/arrow_ipc_reader.py +0 -99
- micromegas-0.8.0/micromegas/flightsql/client.py +0 -307
- {micromegas-0.8.0 → micromegas-0.9.0}/README.md +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/flightsql/FlightSql_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/flightsql/time.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/perfetto.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/common/android_energy_consumer_descriptor_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/common/android_log_constants_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/common/builtin_clock_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/common/descriptor_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/common/gpu_counter_descriptor_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/common/perf_events_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/common/protolog_common_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/common/sys_stats_counters_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/common/trace_stats_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/android/android_game_intervention_list_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/android/android_input_event_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/android/android_log_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/android/android_polled_state_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/android/android_sdk_sysprop_guard_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/android/android_system_property_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/android/network_trace_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/android/packages_list_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/android/pixel_modem_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/android/protolog_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/android/surfaceflinger_layers_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/android/surfaceflinger_transactions_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/chrome/chrome_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/chrome/v8_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/data_source_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/etw/etw_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/ftrace/ftrace_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/gpu/gpu_counter_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/gpu/vulkan_memory_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/inode_file/inode_file_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/interceptor_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/interceptors/console_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/power/android_power_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/process_stats/process_stats_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/profiling/heapprofd_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/profiling/java_hprof_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/profiling/perf_event_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/statsd/atom_ids_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/statsd/statsd_tracing_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/sys_stats/sys_stats_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/system_info/system_info_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/test_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/trace_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/config/track_event/track_event_config_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/android/android_game_intervention_list_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/android/android_log_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/android/android_system_property_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/android/camera_event_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/android/frame_timeline_event_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/android/gpu_mem_event_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/android/graphics/rect_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/android/graphics_frame_event_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/android/initial_display_state_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/android/network_trace_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/android/packages_list_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/android/pixel_modem_events_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/android/protolog_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/android/shell_transition_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/android/surfaceflinger_common_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/android/surfaceflinger_layers_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/android/surfaceflinger_transactions_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/android/winscope_extensions_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/chrome/chrome_benchmark_metadata_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/chrome/chrome_metadata_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/chrome/chrome_trace_event_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/chrome/chrome_trigger_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/chrome/v8_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/clock_snapshot_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/etw/etw_event_bundle_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/etw/etw_event_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/etw/etw_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/extension_descriptor_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/filesystem/inode_file_map_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/android_fs_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/binder_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/block_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/cgroup_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/clk_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/cma_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/compaction_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/cpuhp_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/cros_ec_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/dcvsh_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/dma_fence_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/dmabuf_heap_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/dpu_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/drm_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/ext4_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/f2fs_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/fastrpc_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/fence_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/filemap_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/ftrace_event_bundle_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/ftrace_event_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/ftrace_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/ftrace_stats_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/g2d_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/generic_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/google_icc_trace_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/google_irm_trace_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/gpu_mem_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/gpu_scheduler_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/hyp_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/i2c_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/ion_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/ipi_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/irq_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/kgsl_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/kmem_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/kvm_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/lowmemorykiller_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/lwis_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/mali_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/mdss_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/mm_event_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/net_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/oom_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/panel_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/perf_trace_counters_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/power_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/printk_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/raw_syscalls_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/regulator_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/rpm_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/samsung_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/sched_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/scm_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/sde_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/signal_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/skb_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/sock_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/sync_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/synthetic_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/systrace_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/task_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/tcp_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/thermal_exynos_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/thermal_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/trusty_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/ufs_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/v4l2_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/virtio_gpu_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/virtio_video_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/vmscan_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ftrace/workqueue_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/gpu/gpu_counter_event_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/gpu/gpu_log_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/gpu/gpu_render_stage_event_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/gpu/vulkan_api_event_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/gpu/vulkan_memory_event_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/interned_data/interned_data_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/memory_graph_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/perfetto/perfetto_metatrace_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/perfetto/tracing_service_event_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/power/android_energy_estimation_breakdown_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/power/android_entity_state_residency_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/power/battery_counters_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/power/power_rails_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/profiling/deobfuscation_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/profiling/heap_graph_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/profiling/profile_common_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/profiling/profile_packet_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/profiling/smaps_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ps/process_stats_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ps/process_tree_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/remote_clock_sync_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/statsd/statsd_atom_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/sys_stats/sys_stats_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/system_info/cpu_info_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/system_info_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/test_event_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/trace_packet_defaults_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/trace_packet_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/trace_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/trace_uuid_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/track_event/chrome_active_processes_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/track_event/chrome_application_state_info_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/track_event/chrome_compositor_scheduler_state_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/track_event/chrome_content_settings_event_info_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/track_event/chrome_frame_reporter_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/track_event/chrome_histogram_sample_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/track_event/chrome_keyed_service_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/track_event/chrome_latency_info_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/track_event/chrome_legacy_ipc_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/track_event/chrome_message_pump_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/track_event/chrome_mojo_event_info_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/track_event/chrome_process_descriptor_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/track_event/chrome_renderer_scheduler_state_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/track_event/chrome_thread_descriptor_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/track_event/chrome_user_event_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/track_event/chrome_window_handle_event_info_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/track_event/counter_descriptor_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/track_event/debug_annotation_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/track_event/log_message_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/track_event/pixel_modem_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/track_event/process_descriptor_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/track_event/range_of_interest_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/track_event/screenshot_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/track_event/source_location_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/track_event/task_execution_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/track_event/thread_descriptor_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/track_event/track_descriptor_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/track_event/track_event_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/translation/translation_table_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/trigger_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/thirdparty/perfetto/protos/perfetto/trace/ui_state_pb2.py +0 -0
- {micromegas-0.8.0 → micromegas-0.9.0}/micromegas/time.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
|
-
Metadata-Version: 2.
|
1
|
+
Metadata-Version: 2.3
|
2
2
|
Name: micromegas
|
3
|
-
Version: 0.
|
3
|
+
Version: 0.9.0
|
4
4
|
Summary: Python analytics client for https://github.com/madesroches/micromegas/
|
5
5
|
Author: Marc-Antoine Desroches
|
6
6
|
Author-email: madesroches@gmail.com
|
@@ -9,14 +9,14 @@ Classifier: Programming Language :: Python :: 3
|
|
9
9
|
Classifier: Programming Language :: Python :: 3.10
|
10
10
|
Classifier: Programming Language :: Python :: 3.11
|
11
11
|
Classifier: Programming Language :: Python :: 3.12
|
12
|
-
|
12
|
+
Classifier: Programming Language :: Python :: 3.13
|
13
|
+
Requires-Dist: certifi (>=2025.4.26,<2026.0.0)
|
13
14
|
Requires-Dist: crc (>=7.0.0,<8.0.0)
|
14
|
-
Requires-Dist: flatbuffers (>=24.12.23,<25.0.0)
|
15
15
|
Requires-Dist: grpcio (>=1.69.0,<2.0.0)
|
16
|
+
Requires-Dist: numpy (>=2.2.6,<3.0.0)
|
16
17
|
Requires-Dist: pandas (>=2.2.2,<3.0.0)
|
17
18
|
Requires-Dist: protobuf (>=5.29.1,<6.0.0)
|
18
19
|
Requires-Dist: pyarrow (>=18.1.0,<19.0.0)
|
19
|
-
Requires-Dist: requests (>=2.31.0,<3.0.0)
|
20
20
|
Requires-Dist: tabulate (>=0.9.0,<0.10.0)
|
21
21
|
Requires-Dist: tqdm (>=4.66.5,<5.0.0)
|
22
22
|
Description-Content-Type: text/markdown
|
@@ -6,5 +6,4 @@ from . import flightsql
|
|
6
6
|
|
7
7
|
def connect():
|
8
8
|
"connect to the analytics service using default values"
|
9
|
-
|
10
|
-
return flightsql.client.FlightSQLClient("localhost:50051", channel_cred)
|
9
|
+
return flightsql.client.FlightSQLClient("grpc://localhost:50051")
|
@@ -0,0 +1,195 @@
|
|
1
|
+
import certifi
|
2
|
+
import pyarrow
|
3
|
+
from pyarrow import flight
|
4
|
+
from typing import Any
|
5
|
+
import sys
|
6
|
+
from google.protobuf import any_pb2
|
7
|
+
from . import FlightSql_pb2
|
8
|
+
from . import time
|
9
|
+
|
10
|
+
|
11
|
+
class MicromegasMiddleware(flight.ClientMiddleware):
|
12
|
+
def __init__(self, headers):
|
13
|
+
self.headers = headers
|
14
|
+
|
15
|
+
def call_completed(self, exception):
|
16
|
+
if exception is not None:
|
17
|
+
print(exception, file=sys.stderr)
|
18
|
+
|
19
|
+
def received_headers(self, headers):
|
20
|
+
pass
|
21
|
+
|
22
|
+
def sending_headers(self):
|
23
|
+
return self.headers
|
24
|
+
|
25
|
+
|
26
|
+
class MicromegasMiddlewareFactory(flight.ClientMiddlewareFactory):
|
27
|
+
def __init__(self, headers):
|
28
|
+
self.headers = headers
|
29
|
+
|
30
|
+
def start_call(self, info):
|
31
|
+
return MicromegasMiddleware(self.headers)
|
32
|
+
|
33
|
+
def make_call_headers( begin, end ):
|
34
|
+
call_headers = []
|
35
|
+
if begin is not None:
|
36
|
+
call_headers.append(
|
37
|
+
(
|
38
|
+
"query_range_begin".encode("utf8"),
|
39
|
+
time.format_datetime(begin).encode("utf8"),
|
40
|
+
)
|
41
|
+
)
|
42
|
+
if end is not None:
|
43
|
+
call_headers.append(
|
44
|
+
(
|
45
|
+
"query_range_end".encode("utf8"),
|
46
|
+
time.format_datetime(end).encode("utf8"),
|
47
|
+
)
|
48
|
+
)
|
49
|
+
return call_headers
|
50
|
+
|
51
|
+
def make_query_ticket(sql):
|
52
|
+
ticket_statement_query = FlightSql_pb2.TicketStatementQuery(
|
53
|
+
statement_handle=sql.encode("utf8")
|
54
|
+
)
|
55
|
+
any = any_pb2.Any()
|
56
|
+
any.Pack(ticket_statement_query)
|
57
|
+
ticket = flight.Ticket(any.SerializeToString())
|
58
|
+
return ticket
|
59
|
+
|
60
|
+
def make_arrow_flight_descriptor(command: Any) -> flight.FlightDescriptor:
|
61
|
+
any = any_pb2.Any()
|
62
|
+
any.Pack(command)
|
63
|
+
return flight.FlightDescriptor.for_command(any.SerializeToString())
|
64
|
+
|
65
|
+
def make_ingest_flight_desc(table_name):
|
66
|
+
ingest_statement = FlightSql_pb2.CommandStatementIngest(table=table_name, temporary=False)
|
67
|
+
desc = make_arrow_flight_descriptor(ingest_statement)
|
68
|
+
return desc
|
69
|
+
|
70
|
+
class FlightSQLClient:
|
71
|
+
def __init__(self, uri, headers=None):
|
72
|
+
fh = open(certifi.where(), "r")
|
73
|
+
cert = fh.read()
|
74
|
+
fh.close()
|
75
|
+
factory = MicromegasMiddlewareFactory(headers)
|
76
|
+
self.__flight_client = flight.connect(
|
77
|
+
location=uri, tls_root_certs=cert, middleware=[factory]
|
78
|
+
)
|
79
|
+
|
80
|
+
def query(self, sql, begin=None, end=None):
|
81
|
+
call_headers = make_call_headers(begin, end)
|
82
|
+
options = flight.FlightCallOptions(headers=call_headers)
|
83
|
+
ticket = make_query_ticket(sql)
|
84
|
+
reader = self.__flight_client.do_get(ticket, options=options)
|
85
|
+
record_batches = []
|
86
|
+
for chunk in reader:
|
87
|
+
record_batches.append(chunk.data)
|
88
|
+
table = pyarrow.Table.from_batches(record_batches, reader.schema)
|
89
|
+
return table.to_pandas()
|
90
|
+
|
91
|
+
def query_stream(self, sql, begin=None, end=None):
|
92
|
+
ticket = make_query_ticket(sql)
|
93
|
+
call_headers = make_call_headers(begin, end)
|
94
|
+
options = flight.FlightCallOptions(headers=call_headers)
|
95
|
+
reader = self.__flight_client.do_get(ticket, options=options)
|
96
|
+
record_batches = []
|
97
|
+
for chunk in reader:
|
98
|
+
yield chunk.data
|
99
|
+
|
100
|
+
def bulk_ingest(self, table_name, df):
|
101
|
+
desc = make_ingest_flight_desc(table_name)
|
102
|
+
table = pyarrow.Table.from_pandas(df)
|
103
|
+
writer, reader = self.__flight_client.do_put(desc, table.schema)
|
104
|
+
for rb in table.to_batches():
|
105
|
+
writer.write(rb)
|
106
|
+
writer.done_writing()
|
107
|
+
result = reader.read()
|
108
|
+
if result is not None:
|
109
|
+
update_result = FlightSql_pb2.DoPutUpdateResult()
|
110
|
+
update_result.ParseFromString(result.to_pybytes())
|
111
|
+
return update_result
|
112
|
+
else:
|
113
|
+
return None
|
114
|
+
|
115
|
+
def retire_partitions(self, view_set_name, view_instance_id, begin, end):
|
116
|
+
sql = """
|
117
|
+
SELECT time, msg
|
118
|
+
FROM retire_partitions('{view_set_name}', '{view_instance_id}', '{begin}', '{end}')
|
119
|
+
""".format(
|
120
|
+
view_set_name=view_set_name,
|
121
|
+
view_instance_id=view_instance_id,
|
122
|
+
begin=begin.isoformat(),
|
123
|
+
end=end.isoformat(),
|
124
|
+
)
|
125
|
+
for rb in self.query_stream(sql):
|
126
|
+
for index, row in rb.to_pandas().iterrows():
|
127
|
+
print(row["time"], row["msg"])
|
128
|
+
|
129
|
+
def materialize_partitions(
|
130
|
+
self, view_set_name, begin, end, partition_delta_seconds
|
131
|
+
):
|
132
|
+
sql = """
|
133
|
+
SELECT time, msg
|
134
|
+
FROM materialize_partitions('{view_set_name}', '{begin}', '{end}', {partition_delta_seconds})
|
135
|
+
""".format(
|
136
|
+
view_set_name=view_set_name,
|
137
|
+
begin=begin.isoformat(),
|
138
|
+
end=end.isoformat(),
|
139
|
+
partition_delta_seconds=partition_delta_seconds,
|
140
|
+
)
|
141
|
+
for rb in self.query_stream(sql):
|
142
|
+
for index, row in rb.to_pandas().iterrows():
|
143
|
+
print(row["time"], row["msg"])
|
144
|
+
|
145
|
+
def find_process(self, process_id):
|
146
|
+
sql = """
|
147
|
+
SELECT *
|
148
|
+
FROM processes
|
149
|
+
WHERE process_id='{process_id}';
|
150
|
+
""".format(
|
151
|
+
process_id=process_id
|
152
|
+
)
|
153
|
+
return self.query(sql)
|
154
|
+
|
155
|
+
def query_streams(self, begin, end, limit, process_id=None, tag_filter=None):
|
156
|
+
conditions = []
|
157
|
+
if process_id is not None:
|
158
|
+
conditions.append("process_id='{process_id}'".format(process_id=process_id))
|
159
|
+
if tag_filter is not None:
|
160
|
+
conditions.append(
|
161
|
+
"(array_position(tags, '{tag}') is not NULL)".format(tag=tag_filter)
|
162
|
+
)
|
163
|
+
where = ""
|
164
|
+
if len(conditions) > 0:
|
165
|
+
where = "WHERE " + " AND ".join(conditions)
|
166
|
+
sql = """
|
167
|
+
SELECT *
|
168
|
+
FROM streams
|
169
|
+
{where}
|
170
|
+
LIMIT {limit};
|
171
|
+
""".format(
|
172
|
+
where=where, limit=limit
|
173
|
+
)
|
174
|
+
return self.query(sql, begin, end)
|
175
|
+
|
176
|
+
def query_blocks(self, begin, end, limit, stream_id):
|
177
|
+
sql = """
|
178
|
+
SELECT *
|
179
|
+
FROM blocks
|
180
|
+
WHERE stream_id='{stream_id}'
|
181
|
+
LIMIT {limit};
|
182
|
+
""".format(
|
183
|
+
limit=limit, stream_id=stream_id
|
184
|
+
)
|
185
|
+
return self.query(sql, begin, end)
|
186
|
+
|
187
|
+
def query_spans(self, begin, end, limit, stream_id):
|
188
|
+
sql = """
|
189
|
+
SELECT *
|
190
|
+
FROM view_instance('thread_spans', '{stream_id}')
|
191
|
+
LIMIT {limit};
|
192
|
+
""".format(
|
193
|
+
limit=limit, stream_id=stream_id
|
194
|
+
)
|
195
|
+
return self.query(sql, begin, end)
|
@@ -1,20 +1,19 @@
|
|
1
1
|
[tool.poetry]
|
2
2
|
name = "micromegas"
|
3
|
-
version = "0.
|
3
|
+
version = "0.9.0"
|
4
4
|
description = "Python analytics client for https://github.com/madesroches/micromegas/"
|
5
5
|
authors = ["Marc-Antoine Desroches <madesroches@gmail.com>"]
|
6
6
|
readme = "README.md"
|
7
7
|
|
8
8
|
[tool.poetry.dependencies]
|
9
|
-
|
9
|
+
certifi = "^2025.4.26"
|
10
10
|
crc = "^7.0.0"
|
11
|
-
flatbuffers = "^24.12.23"
|
12
11
|
grpcio = "^1.69.0"
|
13
12
|
pandas = "^2.2.2"
|
13
|
+
numpy = "^2.2.6"
|
14
14
|
protobuf = "^5.29.1"
|
15
15
|
pyarrow = "^18.1.0"
|
16
16
|
python = "^3.10"
|
17
|
-
requests = "^2.31.0"
|
18
17
|
tabulate = "^0.9.0"
|
19
18
|
tqdm = "^4.66.5"
|
20
19
|
|
@@ -1,24 +0,0 @@
|
|
1
|
-
# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
|
2
|
-
"""Client and server classes corresponding to protobuf-defined services."""
|
3
|
-
import grpc
|
4
|
-
import warnings
|
5
|
-
|
6
|
-
|
7
|
-
GRPC_GENERATED_VERSION = '1.68.1'
|
8
|
-
GRPC_VERSION = grpc.__version__
|
9
|
-
_version_not_supported = False
|
10
|
-
|
11
|
-
try:
|
12
|
-
from grpc._utilities import first_version_is_lower
|
13
|
-
_version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION)
|
14
|
-
except ImportError:
|
15
|
-
_version_not_supported = True
|
16
|
-
|
17
|
-
if _version_not_supported:
|
18
|
-
raise RuntimeError(
|
19
|
-
f'The grpc package installed is at version {GRPC_VERSION},'
|
20
|
-
+ f' but the generated code in FlightSql_pb2_grpc.py depends on'
|
21
|
-
+ f' grpcio>={GRPC_GENERATED_VERSION}.'
|
22
|
-
+ f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}'
|
23
|
-
+ f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.'
|
24
|
-
)
|
@@ -1,116 +0,0 @@
|
|
1
|
-
# -*- coding: utf-8 -*-
|
2
|
-
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
3
|
-
# NO CHECKED-IN PROTOBUF GENCODE
|
4
|
-
# source: Flight.proto
|
5
|
-
# Protobuf Python Version: 5.29.1
|
6
|
-
"""Generated protocol buffer code."""
|
7
|
-
from google.protobuf import descriptor as _descriptor
|
8
|
-
from google.protobuf import descriptor_pool as _descriptor_pool
|
9
|
-
from google.protobuf import runtime_version as _runtime_version
|
10
|
-
from google.protobuf import symbol_database as _symbol_database
|
11
|
-
from google.protobuf.internal import builder as _builder
|
12
|
-
_runtime_version.ValidateProtobufRuntimeVersion(
|
13
|
-
_runtime_version.Domain.PUBLIC,
|
14
|
-
5,
|
15
|
-
29,
|
16
|
-
1,
|
17
|
-
'',
|
18
|
-
'Flight.proto'
|
19
|
-
)
|
20
|
-
# @@protoc_insertion_point(imports)
|
21
|
-
|
22
|
-
_sym_db = _symbol_database.Default()
|
23
|
-
|
24
|
-
|
25
|
-
from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
|
26
|
-
|
27
|
-
|
28
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0c\x46light.proto\x12\x15\x61rrow.flight.protocol\x1a\x1fgoogle/protobuf/timestamp.proto\"=\n\x10HandshakeRequest\x12\x18\n\x10protocol_version\x18\x01 \x01(\x04\x12\x0f\n\x07payload\x18\x02 \x01(\x0c\">\n\x11HandshakeResponse\x12\x18\n\x10protocol_version\x18\x01 \x01(\x04\x12\x0f\n\x07payload\x18\x02 \x01(\x0c\"/\n\tBasicAuth\x12\x10\n\x08username\x18\x02 \x01(\t\x12\x10\n\x08password\x18\x03 \x01(\t\"\x07\n\x05\x45mpty\"/\n\nActionType\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\"\x1e\n\x08\x43riteria\x12\x12\n\nexpression\x18\x01 \x01(\x0c\"$\n\x06\x41\x63tion\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x0c\n\x04\x62ody\x18\x02 \x01(\x0c\"\x16\n\x06Result\x12\x0c\n\x04\x62ody\x18\x01 \x01(\x0c\"\x1e\n\x0cSchemaResult\x12\x0e\n\x06schema\x18\x01 \x01(\x0c\"\xa5\x01\n\x10\x46lightDescriptor\x12\x44\n\x04type\x18\x01 \x01(\x0e\x32\x36.arrow.flight.protocol.FlightDescriptor.DescriptorType\x12\x0b\n\x03\x63md\x18\x02 \x01(\x0c\x12\x0c\n\x04path\x18\x03 \x03(\t\"0\n\x0e\x44\x65scriptorType\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x08\n\x04PATH\x10\x01\x12\x07\n\x03\x43MD\x10\x02\"\xec\x01\n\nFlightInfo\x12\x0e\n\x06schema\x18\x01 \x01(\x0c\x12\x42\n\x11\x66light_descriptor\x18\x02 \x01(\x0b\x32\'.arrow.flight.protocol.FlightDescriptor\x12\x37\n\x08\x65ndpoint\x18\x03 \x03(\x0b\x32%.arrow.flight.protocol.FlightEndpoint\x12\x15\n\rtotal_records\x18\x04 \x01(\x03\x12\x13\n\x0btotal_bytes\x18\x05 \x01(\x03\x12\x0f\n\x07ordered\x18\x06 \x01(\x08\x12\x14\n\x0c\x61pp_metadata\x18\x07 \x01(\x0c\"\xd8\x01\n\x08PollInfo\x12/\n\x04info\x18\x01 \x01(\x0b\x32!.arrow.flight.protocol.FlightInfo\x12\x42\n\x11\x66light_descriptor\x18\x02 \x01(\x0b\x32\'.arrow.flight.protocol.FlightDescriptor\x12\x15\n\x08progress\x18\x03 \x01(\x01H\x00\x88\x01\x01\x12\x33\n\x0f\x65xpiration_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x0b\n\t_progress\"J\n\x17\x43\x61ncelFlightInfoRequest\x12/\n\x04info\x18\x01 \x01(\x0b\x32!.arrow.flight.protocol.FlightInfo\"M\n\x16\x43\x61ncelFlightInfoResult\x12\x33\n\x06status\x18\x01 \x01(\x0e\x32#.arrow.flight.protocol.CancelStatus\"\x18\n\x06Ticket\x12\x0e\n\x06ticket\x18\x01 \x01(\x0c\"\x17\n\x08Location\x12\x0b\n\x03uri\x18\x01 \x01(\t\"\xbd\x01\n\x0e\x46lightEndpoint\x12-\n\x06ticket\x18\x01 \x01(\x0b\x32\x1d.arrow.flight.protocol.Ticket\x12\x31\n\x08location\x18\x02 \x03(\x0b\x32\x1f.arrow.flight.protocol.Location\x12\x33\n\x0f\x65xpiration_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x14\n\x0c\x61pp_metadata\x18\x04 \x01(\x0c\"U\n\x1aRenewFlightEndpointRequest\x12\x37\n\x08\x65ndpoint\x18\x01 \x01(\x0b\x32%.arrow.flight.protocol.FlightEndpoint\"\x8f\x01\n\nFlightData\x12\x42\n\x11\x66light_descriptor\x18\x01 \x01(\x0b\x32\'.arrow.flight.protocol.FlightDescriptor\x12\x13\n\x0b\x64\x61ta_header\x18\x02 \x01(\x0c\x12\x14\n\x0c\x61pp_metadata\x18\x03 \x01(\x0c\x12\x12\n\tdata_body\x18\xe8\x07 \x01(\x0c\"!\n\tPutResult\x12\x14\n\x0c\x61pp_metadata\x18\x01 \x01(\x0c\"\xfc\x01\n\x12SessionOptionValue\x12\x16\n\x0cstring_value\x18\x01 \x01(\tH\x00\x12\x14\n\nbool_value\x18\x02 \x01(\x08H\x00\x12\x15\n\x0bint64_value\x18\x03 \x01(\x10H\x00\x12\x16\n\x0c\x64ouble_value\x18\x04 \x01(\x01H\x00\x12V\n\x11string_list_value\x18\x05 \x01(\x0b\x32\x39.arrow.flight.protocol.SessionOptionValue.StringListValueH\x00\x1a!\n\x0fStringListValue\x12\x0e\n\x06values\x18\x01 \x03(\tB\x0e\n\x0coption_value\"\xda\x01\n\x18SetSessionOptionsRequest\x12\\\n\x0fsession_options\x18\x01 \x03(\x0b\x32\x43.arrow.flight.protocol.SetSessionOptionsRequest.SessionOptionsEntry\x1a`\n\x13SessionOptionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x38\n\x05value\x18\x02 \x01(\x0b\x32).arrow.flight.protocol.SessionOptionValue:\x02\x38\x01\"\xec\x02\n\x17SetSessionOptionsResult\x12J\n\x06\x65rrors\x18\x01 \x03(\x0b\x32:.arrow.flight.protocol.SetSessionOptionsResult.ErrorsEntry\x1aQ\n\x05\x45rror\x12H\n\x05value\x18\x01 \x01(\x0e\x32\x39.arrow.flight.protocol.SetSessionOptionsResult.ErrorValue\x1a\x63\n\x0b\x45rrorsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x43\n\x05value\x18\x02 \x01(\x0b\x32\x34.arrow.flight.protocol.SetSessionOptionsResult.Error:\x02\x38\x01\"M\n\nErrorValue\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x10\n\x0cINVALID_NAME\x10\x01\x12\x11\n\rINVALID_VALUE\x10\x02\x12\t\n\x05\x45RROR\x10\x03\"\x1a\n\x18GetSessionOptionsRequest\"\xd8\x01\n\x17GetSessionOptionsResult\x12[\n\x0fsession_options\x18\x01 \x03(\x0b\x32\x42.arrow.flight.protocol.GetSessionOptionsResult.SessionOptionsEntry\x1a`\n\x13SessionOptionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x38\n\x05value\x18\x02 \x01(\x0b\x32).arrow.flight.protocol.SessionOptionValue:\x02\x38\x01\"\x15\n\x13\x43loseSessionRequest\"\x9d\x01\n\x12\x43loseSessionResult\x12@\n\x06status\x18\x01 \x01(\x0e\x32\x30.arrow.flight.protocol.CloseSessionResult.Status\"E\n\x06Status\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\n\n\x06\x43LOSED\x10\x01\x12\x0b\n\x07\x43LOSING\x10\x02\x12\x11\n\rNOT_CLOSEABLE\x10\x03*\x8b\x01\n\x0c\x43\x61ncelStatus\x12\x1d\n\x19\x43\x41NCEL_STATUS_UNSPECIFIED\x10\x00\x12\x1b\n\x17\x43\x41NCEL_STATUS_CANCELLED\x10\x01\x12\x1c\n\x18\x43\x41NCEL_STATUS_CANCELLING\x10\x02\x12!\n\x1d\x43\x41NCEL_STATUS_NOT_CANCELLABLE\x10\x03\x32\x85\x07\n\rFlightService\x12\x64\n\tHandshake\x12\'.arrow.flight.protocol.HandshakeRequest\x1a(.arrow.flight.protocol.HandshakeResponse\"\x00(\x01\x30\x01\x12U\n\x0bListFlights\x12\x1f.arrow.flight.protocol.Criteria\x1a!.arrow.flight.protocol.FlightInfo\"\x00\x30\x01\x12]\n\rGetFlightInfo\x12\'.arrow.flight.protocol.FlightDescriptor\x1a!.arrow.flight.protocol.FlightInfo\"\x00\x12\\\n\x0ePollFlightInfo\x12\'.arrow.flight.protocol.FlightDescriptor\x1a\x1f.arrow.flight.protocol.PollInfo\"\x00\x12[\n\tGetSchema\x12\'.arrow.flight.protocol.FlightDescriptor\x1a#.arrow.flight.protocol.SchemaResult\"\x00\x12M\n\x05\x44oGet\x12\x1d.arrow.flight.protocol.Ticket\x1a!.arrow.flight.protocol.FlightData\"\x00\x30\x01\x12R\n\x05\x44oPut\x12!.arrow.flight.protocol.FlightData\x1a .arrow.flight.protocol.PutResult\"\x00(\x01\x30\x01\x12X\n\nDoExchange\x12!.arrow.flight.protocol.FlightData\x1a!.arrow.flight.protocol.FlightData\"\x00(\x01\x30\x01\x12L\n\x08\x44oAction\x12\x1d.arrow.flight.protocol.Action\x1a\x1d.arrow.flight.protocol.Result\"\x00\x30\x01\x12R\n\x0bListActions\x12\x1c.arrow.flight.protocol.Empty\x1a!.arrow.flight.protocol.ActionType\"\x00\x30\x01\x42q\n\x1corg.apache.arrow.flight.implZ2github.com/apache/arrow-go/arrow/flight/gen/flight\xaa\x02\x1c\x41pache.Arrow.Flight.Protocolb\x06proto3')
|
29
|
-
|
30
|
-
_globals = globals()
|
31
|
-
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
32
|
-
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'Flight_pb2', _globals)
|
33
|
-
if not _descriptor._USE_C_DESCRIPTORS:
|
34
|
-
_globals['DESCRIPTOR']._loaded_options = None
|
35
|
-
_globals['DESCRIPTOR']._serialized_options = b'\n\034org.apache.arrow.flight.implZ2github.com/apache/arrow-go/arrow/flight/gen/flight\252\002\034Apache.Arrow.Flight.Protocol'
|
36
|
-
_globals['_SETSESSIONOPTIONSREQUEST_SESSIONOPTIONSENTRY']._loaded_options = None
|
37
|
-
_globals['_SETSESSIONOPTIONSREQUEST_SESSIONOPTIONSENTRY']._serialized_options = b'8\001'
|
38
|
-
_globals['_SETSESSIONOPTIONSRESULT_ERRORSENTRY']._loaded_options = None
|
39
|
-
_globals['_SETSESSIONOPTIONSRESULT_ERRORSENTRY']._serialized_options = b'8\001'
|
40
|
-
_globals['_GETSESSIONOPTIONSRESULT_SESSIONOPTIONSENTRY']._loaded_options = None
|
41
|
-
_globals['_GETSESSIONOPTIONSRESULT_SESSIONOPTIONSENTRY']._serialized_options = b'8\001'
|
42
|
-
_globals['_CANCELSTATUS']._serialized_start=2998
|
43
|
-
_globals['_CANCELSTATUS']._serialized_end=3137
|
44
|
-
_globals['_HANDSHAKEREQUEST']._serialized_start=72
|
45
|
-
_globals['_HANDSHAKEREQUEST']._serialized_end=133
|
46
|
-
_globals['_HANDSHAKERESPONSE']._serialized_start=135
|
47
|
-
_globals['_HANDSHAKERESPONSE']._serialized_end=197
|
48
|
-
_globals['_BASICAUTH']._serialized_start=199
|
49
|
-
_globals['_BASICAUTH']._serialized_end=246
|
50
|
-
_globals['_EMPTY']._serialized_start=248
|
51
|
-
_globals['_EMPTY']._serialized_end=255
|
52
|
-
_globals['_ACTIONTYPE']._serialized_start=257
|
53
|
-
_globals['_ACTIONTYPE']._serialized_end=304
|
54
|
-
_globals['_CRITERIA']._serialized_start=306
|
55
|
-
_globals['_CRITERIA']._serialized_end=336
|
56
|
-
_globals['_ACTION']._serialized_start=338
|
57
|
-
_globals['_ACTION']._serialized_end=374
|
58
|
-
_globals['_RESULT']._serialized_start=376
|
59
|
-
_globals['_RESULT']._serialized_end=398
|
60
|
-
_globals['_SCHEMARESULT']._serialized_start=400
|
61
|
-
_globals['_SCHEMARESULT']._serialized_end=430
|
62
|
-
_globals['_FLIGHTDESCRIPTOR']._serialized_start=433
|
63
|
-
_globals['_FLIGHTDESCRIPTOR']._serialized_end=598
|
64
|
-
_globals['_FLIGHTDESCRIPTOR_DESCRIPTORTYPE']._serialized_start=550
|
65
|
-
_globals['_FLIGHTDESCRIPTOR_DESCRIPTORTYPE']._serialized_end=598
|
66
|
-
_globals['_FLIGHTINFO']._serialized_start=601
|
67
|
-
_globals['_FLIGHTINFO']._serialized_end=837
|
68
|
-
_globals['_POLLINFO']._serialized_start=840
|
69
|
-
_globals['_POLLINFO']._serialized_end=1056
|
70
|
-
_globals['_CANCELFLIGHTINFOREQUEST']._serialized_start=1058
|
71
|
-
_globals['_CANCELFLIGHTINFOREQUEST']._serialized_end=1132
|
72
|
-
_globals['_CANCELFLIGHTINFORESULT']._serialized_start=1134
|
73
|
-
_globals['_CANCELFLIGHTINFORESULT']._serialized_end=1211
|
74
|
-
_globals['_TICKET']._serialized_start=1213
|
75
|
-
_globals['_TICKET']._serialized_end=1237
|
76
|
-
_globals['_LOCATION']._serialized_start=1239
|
77
|
-
_globals['_LOCATION']._serialized_end=1262
|
78
|
-
_globals['_FLIGHTENDPOINT']._serialized_start=1265
|
79
|
-
_globals['_FLIGHTENDPOINT']._serialized_end=1454
|
80
|
-
_globals['_RENEWFLIGHTENDPOINTREQUEST']._serialized_start=1456
|
81
|
-
_globals['_RENEWFLIGHTENDPOINTREQUEST']._serialized_end=1541
|
82
|
-
_globals['_FLIGHTDATA']._serialized_start=1544
|
83
|
-
_globals['_FLIGHTDATA']._serialized_end=1687
|
84
|
-
_globals['_PUTRESULT']._serialized_start=1689
|
85
|
-
_globals['_PUTRESULT']._serialized_end=1722
|
86
|
-
_globals['_SESSIONOPTIONVALUE']._serialized_start=1725
|
87
|
-
_globals['_SESSIONOPTIONVALUE']._serialized_end=1977
|
88
|
-
_globals['_SESSIONOPTIONVALUE_STRINGLISTVALUE']._serialized_start=1928
|
89
|
-
_globals['_SESSIONOPTIONVALUE_STRINGLISTVALUE']._serialized_end=1961
|
90
|
-
_globals['_SETSESSIONOPTIONSREQUEST']._serialized_start=1980
|
91
|
-
_globals['_SETSESSIONOPTIONSREQUEST']._serialized_end=2198
|
92
|
-
_globals['_SETSESSIONOPTIONSREQUEST_SESSIONOPTIONSENTRY']._serialized_start=2102
|
93
|
-
_globals['_SETSESSIONOPTIONSREQUEST_SESSIONOPTIONSENTRY']._serialized_end=2198
|
94
|
-
_globals['_SETSESSIONOPTIONSRESULT']._serialized_start=2201
|
95
|
-
_globals['_SETSESSIONOPTIONSRESULT']._serialized_end=2565
|
96
|
-
_globals['_SETSESSIONOPTIONSRESULT_ERROR']._serialized_start=2304
|
97
|
-
_globals['_SETSESSIONOPTIONSRESULT_ERROR']._serialized_end=2385
|
98
|
-
_globals['_SETSESSIONOPTIONSRESULT_ERRORSENTRY']._serialized_start=2387
|
99
|
-
_globals['_SETSESSIONOPTIONSRESULT_ERRORSENTRY']._serialized_end=2486
|
100
|
-
_globals['_SETSESSIONOPTIONSRESULT_ERRORVALUE']._serialized_start=2488
|
101
|
-
_globals['_SETSESSIONOPTIONSRESULT_ERRORVALUE']._serialized_end=2565
|
102
|
-
_globals['_GETSESSIONOPTIONSREQUEST']._serialized_start=2567
|
103
|
-
_globals['_GETSESSIONOPTIONSREQUEST']._serialized_end=2593
|
104
|
-
_globals['_GETSESSIONOPTIONSRESULT']._serialized_start=2596
|
105
|
-
_globals['_GETSESSIONOPTIONSRESULT']._serialized_end=2812
|
106
|
-
_globals['_GETSESSIONOPTIONSRESULT_SESSIONOPTIONSENTRY']._serialized_start=2102
|
107
|
-
_globals['_GETSESSIONOPTIONSRESULT_SESSIONOPTIONSENTRY']._serialized_end=2198
|
108
|
-
_globals['_CLOSESESSIONREQUEST']._serialized_start=2814
|
109
|
-
_globals['_CLOSESESSIONREQUEST']._serialized_end=2835
|
110
|
-
_globals['_CLOSESESSIONRESULT']._serialized_start=2838
|
111
|
-
_globals['_CLOSESESSIONRESULT']._serialized_end=2995
|
112
|
-
_globals['_CLOSESESSIONRESULT_STATUS']._serialized_start=2926
|
113
|
-
_globals['_CLOSESESSIONRESULT_STATUS']._serialized_end=2995
|
114
|
-
_globals['_FLIGHTSERVICE']._serialized_start=3140
|
115
|
-
_globals['_FLIGHTSERVICE']._serialized_end=4041
|
116
|
-
# @@protoc_insertion_point(module_scope)
|