Skip to content

fatal error when inserting exported data back to db #58

@kuiliu88

Description

@kuiliu88

Issue Description

  • Description of the issue:

  • Sling version (sling --version):

  • Operating System (linux, mac, windows):

  • Replication Configuration:

target: HISTORICAL_TIMEPLUS

defaults:
  mode: full-refresh
  source_options:
    format: csv
    header: true
    delimeter: "~"
  update_key: _tp_time

streams:
  ./latency_metric_csv_folder/*.csv:
    object: Latency_metric

  ...
CREATE STREAM default.Latency_metric
(
  `source` string,
  `event_ts` datetime64(3, 'UTC'),
  `_tp_time` datetime64(3, 'UTC') DEFAULT now64(3, 'UTC') CODEC(DoubleDelta, ZSTD(1)),
  `_tp_sn` int64 CODEC(Delta(8), ZSTD(1)),
  INDEX _tp_time_index _tp_time TYPE minmax GRANULARITY 32,
  INDEX _tp_sn_index _tp_sn TYPE minmax GRANULARITY 32
)
ENGINE = Stream(1, 3, rand())
PARTITION BY to_YYYYMM(_tp_time)
ORDER BY to_start_of_hour(_tp_time)
SETTINGS index_granularity = 8192;
  • Log Output (please run command with -d):
    2025-12-10 13:08:50 DBG Using Timeplus version, skipping update check
    2025-12-10 13:08:50 DBG processing wildcards for LOCAL: ["./latency_metric_csv_folder/.csv"]
    2025-12-10 13:08:50 DBG opened "file" connection (conn-file-dD0)
    2025-12-10 13:08:50 DBG file discover inputs: {"column_level":"","pattern":"./latency_metric_csv_folder/
    .csv","recursive":false,"url":"./latency_metric_csv_folder/"}
    2025-12-10 13:08:50 DBG unfiltered nodes returned: 4
    2025-12-10 13:08:50 DBG ["./latency_metric_csv_folder/part.01.0001.csv","./latency_metric_csv_folder/part.01.0002.csv","./latency_metric_csv_folder/part.01.0003.csv","./latency_metric_csv_folder/part.01.0004.csv"]
    2025-12-10 13:08:50 DBG wildcard './latency_metric_csv_folder/*.csv' matched 4 streams => [./latency_metric_csv_folder/part.01.0001.csv ./latency_metric_csv_folder/part.01.0002.csv ./latency_metric_csv_folder/part.01.0003.csv ./latency_metric_csv_folder/part.01.0004.csv]
    2025-12-10 13:08:50 DBG opened "file" connection (conn-file-zsn)
    2025-12-10 13:08:50 DBG opened "file" connection (conn-file-Clu)
    2025-12-10 13:08:50 DBG opened "file" connection (conn-file-cEA)
    2025-12-10 13:08:50 DBG opened "file" connection (conn-file-7bm)
    2025-12-10 13:08:50 INF Sling Replication [4 streams] | LOCAL -> HISTORICAL_TIMEPLUS

2025-12-10 13:08:50 INF [1 / 4] running stream ./latency_metric_csv_folder/part.01.0001.csv
2025-12-10 13:08:50 DBG Force SLING_PROCESS_BW to false for timeplus database
2025-12-10 13:08:50 DBG Sling version: 1.2.20-timeplus.4 (linux amd64)
2025-12-10 13:08:50 DBG type is file-db
2025-12-10 13:08:50 DBG using: {"columns":null,"mode":"full-refresh","transforms":null}
2025-12-10 13:08:50 DBG using source options: {"trim_space":false,"empty_as_null":true,"header":true,"fields_per_rec":-1,"compression":"auto","format":"csv","null_if":"NULL","datetime_format":"2006-01-02 15:04:05.000000 +00","skip_blank_lines":false,"max_decimals":11}
2025-12-10 13:08:50 DBG using target options: {"batch_limit":50000,"datetime_format":"2006-01-02 15:04:05.000000 +00","file_max_rows":0,"max_decimals":11,"use_bulk":true,"add_new_columns":true,"adjust_column_type":false,"column_casing":"source"}
2025-12-10 13:08:50 DBG opened "proton" connection (conn-proton-3PO)
2025-12-10 13:08:50 INF connecting to target database (proton)
2025-12-10 13:08:50 INF reading from source file system (file)
2025-12-10 13:08:50 DBG opened "file" connection (conn-file-DpM)
2025-12-10 13:08:50 DBG reading single datastream from file://./latency_metric_csv_folder/part.01.0001.csv [format=csv]
2025-12-10 13:08:50 DBG merging csv readers of 1 files (sequential processing) from file://./latency_metric_csv_folder/part.01.0001.csv
2025-12-10 13:08:50 DBG processing reader from file://./latency_metric_csv_folder/part.01.0001.csv
2025-12-10 13:08:50 DBG delimiter auto-detected: "~"
2025-12-10 13:08:50 INF writing to target database [mode: full-refresh]
2025-12-10 13:08:50 INF streaming data (direct insert)
2025-12-10 13:08:50 DBG use default
3m14s 49,677,079 251954 r/s | 39% MEM | 73% CPU 2025-12-10 13:12:06 DBG 50000000 ROWS COPIED
3m19s 50,000,000 196702 r/s | 38% MEM | 63% CPU 2025-12-10 13:12:11 DBG select count(*) as cnt from table(default.Latency_metric)
3m20s 50,000,000 252069 r/s | 38% MEM | 64% CPU
2025-12-10 13:12:11 INF inserted 50000000 rows into default.Latency_metric in 200 secs [249,550 r/s]
2025-12-10 13:12:11 DBG closed "proton" connection (conn-proton-3PO)
2025-12-10 13:12:11 INF execution succeeded

2025-12-10 13:12:11 INF [2 / 4] running stream ./latency_metric_csv_folder/part.01.0002.csv
2025-12-10 13:12:11 DBG Force SLING_PROCESS_BW to false for timeplus database
2025-12-10 13:12:11 DBG Sling version: 1.2.20-timeplus.4 (linux amd64)
2025-12-10 13:12:11 DBG type is file-db
2025-12-10 13:12:11 DBG using: {"columns":null,"mode":"full-refresh","transforms":null}
2025-12-10 13:12:11 DBG using source options: {"trim_space":false,"empty_as_null":true,"header":true,"fields_per_rec":-1,"compression":"auto","format":"csv","null_if":"NULL","datetime_format":"2006-01-02 15:04:05.000000 +00","skip_blank_lines":false,"max_decimals":11}
2025-12-10 13:12:11 DBG using target options: {"batch_limit":50000,"datetime_format":"2006-01-02 15:04:05.000000 +00","file_max_rows":0,"max_decimals":11,"use_bulk":true,"add_new_columns":true,"adjust_column_type":false,"column_casing":"source"}
2025-12-10 13:12:11 INF connecting to target database (proton)
2025-12-10 13:12:11 DBG opened "proton" connection (conn-proton-WWp)
2025-12-10 13:12:11 INF reading from source file system (file)
2025-12-10 13:12:11 DBG opened "file" connection (conn-file-1b0)
2025-12-10 13:12:11 DBG reading single datastream from file://./latency_metric_csv_folder/part.01.0002.csv [format=csv]
2025-12-10 13:12:11 DBG merging csv readers of 1 files (sequential processing) from file://./latency_metric_csv_folder/part.01.0002.csv
2025-12-10 13:12:11 DBG processing reader from file://./latency_metric_csv_folder/part.01.0002.csv
2025-12-10 13:12:11 DBG delimiter auto-detected: "~"
2025-12-10 13:12:11 INF writing to target database [mode: full-refresh]
2025-12-10 13:12:11 INF streaming data (direct insert)
2025-12-10 13:12:11 DBG use default
3m12s 49,550,000 238447 r/s | 39% MEM | 71% CPU 2025-12-10 13:15:24 DBG 50000000 ROWS COPIED
3m17s 50,000,000 193749 r/s | 38% MEM | 64% CPU 2025-12-10 13:15:29 DBG select count(*) as cnt from table(default.Latency_metric)
3m17s 50,000,000 253958 r/s | 38% MEM | 60% CPU
2025-12-10 13:15:29 DBG closed "proton" connection (conn-proton-WWp)
2025-12-10 13:15:29 INF execution failed
inserted into final table but table count (100000000) != stream count (50000000). Records missing/mismatch. Aborting

2025-12-10 13:15:29 INF [3 / 4] running stream ./latency_metric_csv_folder/part.01.0003.csv
2025-12-10 13:15:29 DBG Force SLING_PROCESS_BW to false for timeplus database
2025-12-10 13:15:29 DBG Sling version: 1.2.20-timeplus.4 (linux amd64)
2025-12-10 13:15:29 DBG type is file-db
2025-12-10 13:15:29 DBG using: {"columns":null,"mode":"full-refresh","transforms":null}
2025-12-10 13:15:29 DBG using source options: {"trim_space":false,"empty_as_null":true,"header":true,"fields_per_rec":-1,"compression":"auto","format":"csv","null_if":"NULL","datetime_format":"2006-01-02 15:04:05.000000 +00","skip_blank_lines":false,"max_decimals":11}
2025-12-10 13:15:29 DBG using target options: {"batch_limit":50000,"datetime_format":"2006-01-02 15:04:05.000000 +00","file_max_rows":0,"max_decimals":11,"use_bulk":true,"add_new_columns":true,"adjust_column_type":false,"column_casing":"source"}
2025-12-10 13:15:29 INF connecting to target database (proton)
2025-12-10 13:15:29 DBG opened "proton" connection (conn-proton-4py)
2025-12-10 13:15:29 INF reading from source file system (file)
2025-12-10 13:15:29 DBG opened "file" connection (conn-file-Icl)
2025-12-10 13:15:29 DBG reading single datastream from file://./latency_metric_csv_folder/part.01.0003.csv [format=csv]
2025-12-10 13:15:29 DBG merging csv readers of 1 files (sequential processing) from file://./latency_metric_csv_folder/part.01.0003.csv
2025-12-10 13:15:29 DBG processing reader from file://./latency_metric_csv_folder/part.01.0003.csv
2025-12-10 13:15:29 DBG delimiter auto-detected: "~"
2025-12-10 13:15:29 INF writing to target database [mode: full-refresh]
2025-12-10 13:15:29 INF streaming data (direct insert)
2025-12-10 13:15:29 DBG use default
3m14s 49,550,000 258868 r/s | 39% MEM | 69% CPU 2025-12-10 13:18:45 DBG 50000000 ROWS COPIED
3m19s 50,000,000 208254 r/s | 38% MEM | 66% CPU 2025-12-10 13:18:50 DBG select count(*) as cnt from table(default.Latency_metric)
3m20s 50,000,000 251533 r/s | 38% MEM | 65% CPU
2025-12-10 13:18:50 DBG closed "proton" connection (conn-proton-4py)
2025-12-10 13:18:50 INF execution failed
inserted into final table but table count (150000000) != stream count (50000000). Records missing/mismatch. Aborting

2025-12-10 13:18:50 INF [4 / 4] running stream ./latency_metric_csv_folder/part.01.0004.csv
2025-12-10 13:18:50 DBG Force SLING_PROCESS_BW to false for timeplus database
2025-12-10 13:18:50 DBG Sling version: 1.2.20-timeplus.4 (linux amd64)
2025-12-10 13:18:50 DBG type is file-db
2025-12-10 13:18:50 DBG using: {"columns":null,"mode":"full-refresh","transforms":null}
2025-12-10 13:18:50 DBG using source options: {"trim_space":false,"empty_as_null":true,"header":true,"fields_per_rec":-1,"compression":"auto","format":"csv","null_if":"NULL","datetime_format":"2006-01-02 15:04:05.000000 +00","skip_blank_lines":false,"max_decimals":11}
2025-12-10 13:18:50 DBG using target options: {"batch_limit":50000,"datetime_format":"2006-01-02 15:04:05.000000 +00","file_max_rows":0,"max_decimals":11,"use_bulk":true,"add_new_columns":true,"adjust_column_type":false,"column_casing":"source"}
2025-12-10 13:18:50 INF connecting to target database (proton)
2025-12-10 13:18:50 DBG opened "proton" connection (conn-proton-a7b)
2025-12-10 13:18:50 INF reading from source file system (file)
2025-12-10 13:18:50 DBG opened "file" connection (conn-file-oM0)
2025-12-10 13:18:50 DBG reading single datastream from file://./latency_metric_csv_folder/part.01.0004.csv [format=csv]
2025-12-10 13:18:50 DBG merging csv readers of 1 files (sequential processing) from file://./latency_metric_csv_folder/part.01.0004.csv
2025-12-10 13:18:50 DBG processing reader from file://./latency_metric_csv_folder/part.01.0004.csv
2025-12-10 13:18:50 DBG delimiter auto-detected: "~"
2025-12-10 13:18:50 INF writing to target database [mode: full-refresh]
2025-12-10 13:18:50 INF streaming data (direct insert)
2025-12-10 13:18:50 DBG use default
18s 4,735,227 262521 r/s | 40% MEM | 74% CPU 2025-12-10 13:19:10 DBG 5090084 ROWS COPIED
23s 5,090,084 205924 r/s | 38% MEM | 68% CPU 2025-12-10 13:19:15 DBG select count(*) as cnt from table(default.Latency_metric)
24s 5,090,084 227061 r/s | 38% MEM | 67% CPU
2025-12-10 13:19:15 DBG closed "proton" connection (conn-proton-a7b)
2025-12-10 13:19:15 INF execution failed
inserted into final table but table count (155090084) != stream count (5090084). Records missing/mismatch. Aborting

2025-12-10 13:19:15 INF Sling Replication Completed in 10m 24s | LOCAL -> HISTORICAL_TIMEPLUS | 1 Successes | 3 Failures

fatal:
--- proc.go:283 main ---
--- sling_cli.go:473 main ---
--- sling_cli.go:509 cliInit ---
--- cli.go:286 CliProcess ---
~ failure running replication (see docs @ https://docs.slingdata.io/sling-cli)
--- sling_run.go:202 processRun ---

--------------------------- ./latency_metric_csv_folder/part.01.0002.csv ---------------------------
--- task_run.go:110 func1 ---
--- task_run.go:448 runFileToDB ---
--- task_run_write.go:146 WriteToDb ---
~ could not write to database
--- task_run_write.go:536 writeDirectly ---
inserted into final table but table count (100000000) != stream count (50000000). Records missing/mismatch. Aborting

--------------------------- ./latency_metric_csv_folder/part.01.0003.csv ---------------------------
--- task_run.go:110 func1 ---
--- task_run.go:448 runFileToDB ---
--- task_run_write.go:146 WriteToDb ---
~ could not write to database
--- task_run_write.go:536 writeDirectly ---
inserted into final table but table count (150000000) != stream count (50000000). Records missing/mismatch. Aborting

--------------------------- ./latency_metric_csv_folder/part.01.0004.csv ---------------------------
--- task_run.go:110 func1 ---
--- task_run.go:448 runFileToDB ---
--- task_run_write.go:146 WriteToDb ---
~ could not write to database
--- task_run_write.go:536 writeDirectly ---
inserted into final table but table count (155090084) != stream count (5090084). Records missing/mismatch. Aborting

Paste log here.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions