api/schema_handler.go (6 lines): - line 187: // TODO: need mapping from metaStore error to api error - line 214: // TODO: validate column - line 217: // TODO: need mapping from metaStore error to api error - line 245: // TODO: need mapping from metaStore error to api error - line 270: // TODO: validate whether table exists and specified columns does not belong to primary key or time column - line 273: // TODO: need mapping from metaStore error to api error query/aql_compiler.go (5 lines): - line 101: // TODO: VM instruction generation - line 685: // TODO: IS_NULL can be matched as an equality filter. - line 686: // TODO: IS_NOT_NULL can be matched as the final range filter. - line 1020: // TODO: resolve time filter column against foreign tables. - line 1271: // TODO: support numeric bucketizer. query/time_series_aggregate.go (3 lines): - line 90: // TODO: expr.BITWISE_LEFT_SHIFT ? - line 91: // TODO: expr.BITWISE_RIGHT_SHIFT ? - line 675: // TODO: we also need a way to report this allocation in C++ code. Maybe can be done via calling a golang function from c++ client/connector.go (3 lines): - line 183: //TODO: currently always use shard zero for single instance version - line 186: //TODO: break status code check and error check into two parts for more specific handling like retrying on 5xx - line 407: // 1. dimension table (TODO: might support min/max in the future if needed) cmd/arescli/main.go (2 lines): - line 34: // TODO: @shz implement cluster mode with gateway.controller - line 122: //TODO: add sql cmd query/aql_context.go (2 lines): - line 364: //// TODO: TSAggregate is only used for VM based query engine. - line 436: // Initialize qcHelper, TODO: move to specialized constructor query/sql/antlrgen/sqlbase_lexer.go (2 lines): - line 1008: // TODO: EOF string - line 1032: // TODO: l.EOF = antlr.TokenEOF memstore/ingestion.go (2 lines): - line 147: // TODO: currently we're relying on LiveStore.WriterLock to guarantee the ordering of backfill batches - line 328: // TODO: if there is any performance issue, cache the reporter at live store level. controller/handlers/schema.go (2 lines): - line 134: // TODO: call membership mutator to update instance status - line 222: // TODO: call membership mutator to update instance status broker/query_plan_agg.go (2 lines): - line 118: // TODO early merge before all results come back - line 237: // TODO revisit how to implement AVG. maybe add rollingAvg to datanode so only 1 call per shard needed controller/mutators/etcd/schema_mutator.go (1 line): - line 251: // TODO: remove this when upstream supports archive sort columns subscriber/common/job/controller.go (1 line): - line 530: // TODO: unadevertises old heartbeat and closes etcd client should be added once M3 provides controller/handlers/error.go (1 line): - line 15: // TODO: refactor api pkg and import from ares directly memstore/live_store.go (1 line): - line 83: // TODO: if spinning lock performance is a concern we may need to upgrade this query/context/query_context_helper.go (1 line): - line 223: // TODO: @shz support int64 binary transform cluster/topology/healthtracking_dynamic.go (1 line): - line 111: // TODO: implement when needed query/aql_nonaggr_batchexecutor.go (1 line): - line 77: // TODO: @shz experiment with on demand flush when next batch can not fit in buffer memstore/host_memory_manager.go (1 line): - line 53: // TODO: if later we find to many go routines waiting for the channel, memstore/bootstrap.go (1 line): - line 288: // TODO: add checksum to vp file and vpMeta to avoid copying existing data on disk query/aql_postprocessor.go (1 line): - line 233: // TODO: consider converting non-zero identity values to nil. controller/handlers/models.go (1 line): - line 160: // TODO: finer grain assignment for each aresdb instance query/aql_processor.go (1 line): - line 197: // TODO: Persist min/max/numTrues when snapshotting. datanode/datanode.go (1 line): - line 238: // TODO better to reuse the code directly in controller to talk to etcd memstore/table_shard.go (1 line): - line 94: // TODO: if this blocks on archiving for too long, figure out a way to cancel it. metastore/disk_metastore.go (1 line): - line 1418: //TODO: log an error and alert. memstore/vector_party.go (1 line): - line 376: // TODO: check whether value itself is null, for IS_NULL cmd/aresd/cmd/cmd.go (1 line): - line 161: // TODO keep this path for non-distributed mode, and to aovid code break controller/tasks/etcd/ingestion_assignment.go (1 line): - line 333: // TODO: take subscriber instance capacity into consideration when assigning jobs datanode/bootstrap/bootstrap_server.go (1 line): - line 608: // TODO check table shard ownership from topology api/enum_handler.go (1 line): - line 102: // TODO: need mapping from metaStore error to api error query/expr/parser.go (1 line): - line 358: // TODO: shz@ revisit inclusion parameter when open sourcing