You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

1178 lines
35 KiB

  1. {
  2. "tests": [
  3. {
  4. "name": "invalid - no commit",
  5. "chunks": [
  6. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL\"\ncommit_row: false\n"
  7. ],
  8. "results": [
  9. {
  10. "rk": "",
  11. "fm": "",
  12. "qual": "",
  13. "ts": 0,
  14. "value": "",
  15. "label": "",
  16. "error": true
  17. }
  18. ]
  19. },
  20. {
  21. "name": "invalid - no cell key before commit",
  22. "chunks": [
  23. "commit_row: true\n"
  24. ],
  25. "results": [
  26. {
  27. "rk": "",
  28. "fm": "",
  29. "qual": "",
  30. "ts": 0,
  31. "value": "",
  32. "label": "",
  33. "error": true
  34. }
  35. ]
  36. },
  37. {
  38. "name": "invalid - no cell key before value",
  39. "chunks": [
  40. "timestamp_micros: 100\nvalue: \"value-VAL\"\ncommit_row: false\n"
  41. ],
  42. "results": [
  43. {
  44. "rk": "",
  45. "fm": "",
  46. "qual": "",
  47. "ts": 0,
  48. "value": "",
  49. "label": "",
  50. "error": true
  51. }
  52. ]
  53. },
  54. {
  55. "name": "invalid - new col family must specify qualifier",
  56. "chunks": [
  57. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 101\nvalue: \"value-VAL_1\"\ncommit_row: false\n",
  58. "family_name: \u003c\n value: \"B\"\n\u003e\ntimestamp_micros: 102\nvalue: \"value-VAL_2\"\ncommit_row: true\n"
  59. ],
  60. "results": [
  61. {
  62. "rk": "",
  63. "fm": "",
  64. "qual": "",
  65. "ts": 0,
  66. "value": "",
  67. "label": "",
  68. "error": true
  69. }
  70. ]
  71. },
  72. {
  73. "name": "bare commit implies ts=0",
  74. "chunks": [
  75. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL\"\ncommit_row: false\n",
  76. "commit_row: true\n"
  77. ],
  78. "results": [
  79. {
  80. "rk": "RK",
  81. "fm": "A",
  82. "qual": "C",
  83. "ts": 100,
  84. "value": "value-VAL",
  85. "label": "",
  86. "error": false
  87. },
  88. {
  89. "rk": "RK",
  90. "fm": "A",
  91. "qual": "C",
  92. "ts": 0,
  93. "value": "",
  94. "label": "",
  95. "error": false
  96. }
  97. ]
  98. },
  99. {
  100. "name": "simple row with timestamp",
  101. "chunks": [
  102. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL\"\ncommit_row: true\n"
  103. ],
  104. "results": [
  105. {
  106. "rk": "RK",
  107. "fm": "A",
  108. "qual": "C",
  109. "ts": 100,
  110. "value": "value-VAL",
  111. "label": "",
  112. "error": false
  113. }
  114. ]
  115. },
  116. {
  117. "name": "missing timestamp, implied ts=0",
  118. "chunks": [
  119. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\nvalue: \"value-VAL\"\ncommit_row: true\n"
  120. ],
  121. "results": [
  122. {
  123. "rk": "RK",
  124. "fm": "A",
  125. "qual": "C",
  126. "ts": 0,
  127. "value": "value-VAL",
  128. "label": "",
  129. "error": false
  130. }
  131. ]
  132. },
  133. {
  134. "name": "empty cell value",
  135. "chunks": [
  136. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ncommit_row: true\n"
  137. ],
  138. "results": [
  139. {
  140. "rk": "RK",
  141. "fm": "A",
  142. "qual": "C",
  143. "ts": 0,
  144. "value": "",
  145. "label": "",
  146. "error": false
  147. }
  148. ]
  149. },
  150. {
  151. "name": "two unsplit cells",
  152. "chunks": [
  153. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 101\nvalue: \"value-VAL_1\"\ncommit_row: false\n",
  154. "timestamp_micros: 102\nvalue: \"value-VAL_2\"\ncommit_row: true\n"
  155. ],
  156. "results": [
  157. {
  158. "rk": "RK",
  159. "fm": "A",
  160. "qual": "C",
  161. "ts": 101,
  162. "value": "value-VAL_1",
  163. "label": "",
  164. "error": false
  165. },
  166. {
  167. "rk": "RK",
  168. "fm": "A",
  169. "qual": "C",
  170. "ts": 102,
  171. "value": "value-VAL_2",
  172. "label": "",
  173. "error": false
  174. }
  175. ]
  176. },
  177. {
  178. "name": "two qualifiers",
  179. "chunks": [
  180. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 101\nvalue: \"value-VAL_1\"\ncommit_row: false\n",
  181. "qualifier: \u003c\n value: \"D\"\n\u003e\ntimestamp_micros: 102\nvalue: \"value-VAL_2\"\ncommit_row: true\n"
  182. ],
  183. "results": [
  184. {
  185. "rk": "RK",
  186. "fm": "A",
  187. "qual": "C",
  188. "ts": 101,
  189. "value": "value-VAL_1",
  190. "label": "",
  191. "error": false
  192. },
  193. {
  194. "rk": "RK",
  195. "fm": "A",
  196. "qual": "D",
  197. "ts": 102,
  198. "value": "value-VAL_2",
  199. "label": "",
  200. "error": false
  201. }
  202. ]
  203. },
  204. {
  205. "name": "two families",
  206. "chunks": [
  207. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 101\nvalue: \"value-VAL_1\"\ncommit_row: false\n",
  208. "family_name: \u003c\n value: \"B\"\n\u003e\nqualifier: \u003c\n value: \"E\"\n\u003e\ntimestamp_micros: 102\nvalue: \"value-VAL_2\"\ncommit_row: true\n"
  209. ],
  210. "results": [
  211. {
  212. "rk": "RK",
  213. "fm": "A",
  214. "qual": "C",
  215. "ts": 101,
  216. "value": "value-VAL_1",
  217. "label": "",
  218. "error": false
  219. },
  220. {
  221. "rk": "RK",
  222. "fm": "B",
  223. "qual": "E",
  224. "ts": 102,
  225. "value": "value-VAL_2",
  226. "label": "",
  227. "error": false
  228. }
  229. ]
  230. },
  231. {
  232. "name": "with labels",
  233. "chunks": [
  234. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 101\nlabels: \"L_1\"\nvalue: \"value-VAL_1\"\ncommit_row: false\n",
  235. "timestamp_micros: 102\nlabels: \"L_2\"\nvalue: \"value-VAL_2\"\ncommit_row: true\n"
  236. ],
  237. "results": [
  238. {
  239. "rk": "RK",
  240. "fm": "A",
  241. "qual": "C",
  242. "ts": 101,
  243. "value": "value-VAL_1",
  244. "label": "L_1",
  245. "error": false
  246. },
  247. {
  248. "rk": "RK",
  249. "fm": "A",
  250. "qual": "C",
  251. "ts": 102,
  252. "value": "value-VAL_2",
  253. "label": "L_2",
  254. "error": false
  255. }
  256. ]
  257. },
  258. {
  259. "name": "split cell, bare commit",
  260. "chunks": [
  261. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"v\"\nvalue_size: 10\ncommit_row: false\n",
  262. "value: \"alue-VAL\"\ncommit_row: false\n",
  263. "commit_row: true\n"
  264. ],
  265. "results": [
  266. {
  267. "rk": "RK",
  268. "fm": "A",
  269. "qual": "C",
  270. "ts": 100,
  271. "value": "value-VAL",
  272. "label": "",
  273. "error": false
  274. },
  275. {
  276. "rk": "RK",
  277. "fm": "A",
  278. "qual": "C",
  279. "ts": 0,
  280. "value": "",
  281. "label": "",
  282. "error": false
  283. }
  284. ]
  285. },
  286. {
  287. "name": "split cell",
  288. "chunks": [
  289. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"v\"\nvalue_size: 10\ncommit_row: false\n",
  290. "value: \"alue-VAL\"\ncommit_row: true\n"
  291. ],
  292. "results": [
  293. {
  294. "rk": "RK",
  295. "fm": "A",
  296. "qual": "C",
  297. "ts": 100,
  298. "value": "value-VAL",
  299. "label": "",
  300. "error": false
  301. }
  302. ]
  303. },
  304. {
  305. "name": "split four ways",
  306. "chunks": [
  307. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nlabels: \"L\"\nvalue: \"v\"\nvalue_size: 10\ncommit_row: false\n",
  308. "value: \"a\"\nvalue_size: 10\ncommit_row: false\n",
  309. "value: \"l\"\nvalue_size: 10\ncommit_row: false\n",
  310. "value: \"ue-VAL\"\ncommit_row: true\n"
  311. ],
  312. "results": [
  313. {
  314. "rk": "RK",
  315. "fm": "A",
  316. "qual": "C",
  317. "ts": 100,
  318. "value": "value-VAL",
  319. "label": "L",
  320. "error": false
  321. }
  322. ]
  323. },
  324. {
  325. "name": "two split cells",
  326. "chunks": [
  327. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 101\nvalue: \"v\"\nvalue_size: 10\ncommit_row: false\n",
  328. "value: \"alue-VAL_1\"\ncommit_row: false\n",
  329. "timestamp_micros: 102\nvalue: \"v\"\nvalue_size: 10\ncommit_row: false\n",
  330. "value: \"alue-VAL_2\"\ncommit_row: true\n"
  331. ],
  332. "results": [
  333. {
  334. "rk": "RK",
  335. "fm": "A",
  336. "qual": "C",
  337. "ts": 101,
  338. "value": "value-VAL_1",
  339. "label": "",
  340. "error": false
  341. },
  342. {
  343. "rk": "RK",
  344. "fm": "A",
  345. "qual": "C",
  346. "ts": 102,
  347. "value": "value-VAL_2",
  348. "label": "",
  349. "error": false
  350. }
  351. ]
  352. },
  353. {
  354. "name": "multi-qualifier splits",
  355. "chunks": [
  356. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 101\nvalue: \"v\"\nvalue_size: 10\ncommit_row: false\n",
  357. "value: \"alue-VAL_1\"\ncommit_row: false\n",
  358. "qualifier: \u003c\n value: \"D\"\n\u003e\ntimestamp_micros: 102\nvalue: \"v\"\nvalue_size: 10\ncommit_row: false\n",
  359. "value: \"alue-VAL_2\"\ncommit_row: true\n"
  360. ],
  361. "results": [
  362. {
  363. "rk": "RK",
  364. "fm": "A",
  365. "qual": "C",
  366. "ts": 101,
  367. "value": "value-VAL_1",
  368. "label": "",
  369. "error": false
  370. },
  371. {
  372. "rk": "RK",
  373. "fm": "A",
  374. "qual": "D",
  375. "ts": 102,
  376. "value": "value-VAL_2",
  377. "label": "",
  378. "error": false
  379. }
  380. ]
  381. },
  382. {
  383. "name": "multi-qualifier multi-split",
  384. "chunks": [
  385. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 101\nvalue: \"v\"\nvalue_size: 10\ncommit_row: false\n",
  386. "value: \"a\"\nvalue_size: 10\ncommit_row: false\n",
  387. "value: \"lue-VAL_1\"\ncommit_row: false\n",
  388. "qualifier: \u003c\n value: \"D\"\n\u003e\ntimestamp_micros: 102\nvalue: \"v\"\nvalue_size: 10\ncommit_row: false\n",
  389. "value: \"a\"\nvalue_size: 10\ncommit_row: false\n",
  390. "value: \"lue-VAL_2\"\ncommit_row: true\n"
  391. ],
  392. "results": [
  393. {
  394. "rk": "RK",
  395. "fm": "A",
  396. "qual": "C",
  397. "ts": 101,
  398. "value": "value-VAL_1",
  399. "label": "",
  400. "error": false
  401. },
  402. {
  403. "rk": "RK",
  404. "fm": "A",
  405. "qual": "D",
  406. "ts": 102,
  407. "value": "value-VAL_2",
  408. "label": "",
  409. "error": false
  410. }
  411. ]
  412. },
  413. {
  414. "name": "multi-family split",
  415. "chunks": [
  416. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 101\nvalue: \"v\"\nvalue_size: 10\ncommit_row: false\n",
  417. "value: \"alue-VAL_1\"\ncommit_row: false\n",
  418. "family_name: \u003c\n value: \"B\"\n\u003e\nqualifier: \u003c\n value: \"E\"\n\u003e\ntimestamp_micros: 102\nvalue: \"v\"\nvalue_size: 10\ncommit_row: false\n",
  419. "value: \"alue-VAL_2\"\ncommit_row: true\n"
  420. ],
  421. "results": [
  422. {
  423. "rk": "RK",
  424. "fm": "A",
  425. "qual": "C",
  426. "ts": 101,
  427. "value": "value-VAL_1",
  428. "label": "",
  429. "error": false
  430. },
  431. {
  432. "rk": "RK",
  433. "fm": "B",
  434. "qual": "E",
  435. "ts": 102,
  436. "value": "value-VAL_2",
  437. "label": "",
  438. "error": false
  439. }
  440. ]
  441. },
  442. {
  443. "name": "invalid - no commit between rows",
  444. "chunks": [
  445. "row_key: \"RK_1\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL\"\ncommit_row: false\n",
  446. "row_key: \"RK_2\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL\"\ncommit_row: false\n"
  447. ],
  448. "results": [
  449. {
  450. "rk": "",
  451. "fm": "",
  452. "qual": "",
  453. "ts": 0,
  454. "value": "",
  455. "label": "",
  456. "error": true
  457. }
  458. ]
  459. },
  460. {
  461. "name": "invalid - no commit after first row",
  462. "chunks": [
  463. "row_key: \"RK_1\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL\"\ncommit_row: false\n",
  464. "row_key: \"RK_2\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL\"\ncommit_row: true\n"
  465. ],
  466. "results": [
  467. {
  468. "rk": "",
  469. "fm": "",
  470. "qual": "",
  471. "ts": 0,
  472. "value": "",
  473. "label": "",
  474. "error": true
  475. }
  476. ]
  477. },
  478. {
  479. "name": "invalid - last row missing commit",
  480. "chunks": [
  481. "row_key: \"RK_1\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL\"\ncommit_row: true\n",
  482. "row_key: \"RK_2\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL\"\ncommit_row: false\n"
  483. ],
  484. "results": [
  485. {
  486. "rk": "RK_1",
  487. "fm": "A",
  488. "qual": "C",
  489. "ts": 100,
  490. "value": "value-VAL",
  491. "label": "",
  492. "error": false
  493. },
  494. {
  495. "rk": "",
  496. "fm": "",
  497. "qual": "",
  498. "ts": 0,
  499. "value": "",
  500. "label": "",
  501. "error": true
  502. }
  503. ]
  504. },
  505. {
  506. "name": "invalid - duplicate row key",
  507. "chunks": [
  508. "row_key: \"RK_1\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL\"\ncommit_row: true\n",
  509. "row_key: \"RK_1\"\nfamily_name: \u003c\n value: \"B\"\n\u003e\nqualifier: \u003c\n value: \"D\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL\"\ncommit_row: true\n"
  510. ],
  511. "results": [
  512. {
  513. "rk": "RK_1",
  514. "fm": "A",
  515. "qual": "C",
  516. "ts": 100,
  517. "value": "value-VAL",
  518. "label": "",
  519. "error": false
  520. },
  521. {
  522. "rk": "",
  523. "fm": "",
  524. "qual": "",
  525. "ts": 0,
  526. "value": "",
  527. "label": "",
  528. "error": true
  529. }
  530. ]
  531. },
  532. {
  533. "name": "invalid - new row missing row key",
  534. "chunks": [
  535. "row_key: \"RK_1\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL\"\ncommit_row: true\n",
  536. "timestamp_micros: 100\nvalue: \"value-VAL\"\ncommit_row: true\n"
  537. ],
  538. "results": [
  539. {
  540. "rk": "RK_1",
  541. "fm": "A",
  542. "qual": "C",
  543. "ts": 100,
  544. "value": "value-VAL",
  545. "label": "",
  546. "error": false
  547. },
  548. {
  549. "rk": "",
  550. "fm": "",
  551. "qual": "",
  552. "ts": 0,
  553. "value": "",
  554. "label": "",
  555. "error": true
  556. }
  557. ]
  558. },
  559. {
  560. "name": "two rows",
  561. "chunks": [
  562. "row_key: \"RK_1\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL\"\ncommit_row: true\n",
  563. "row_key: \"RK_2\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL\"\ncommit_row: true\n"
  564. ],
  565. "results": [
  566. {
  567. "rk": "RK_1",
  568. "fm": "A",
  569. "qual": "C",
  570. "ts": 100,
  571. "value": "value-VAL",
  572. "label": "",
  573. "error": false
  574. },
  575. {
  576. "rk": "RK_2",
  577. "fm": "A",
  578. "qual": "C",
  579. "ts": 100,
  580. "value": "value-VAL",
  581. "label": "",
  582. "error": false
  583. }
  584. ]
  585. },
  586. {
  587. "name": "two rows implicit timestamp",
  588. "chunks": [
  589. "row_key: \"RK_1\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\nvalue: \"value-VAL\"\ncommit_row: true\n",
  590. "row_key: \"RK_2\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL\"\ncommit_row: true\n"
  591. ],
  592. "results": [
  593. {
  594. "rk": "RK_1",
  595. "fm": "A",
  596. "qual": "C",
  597. "ts": 0,
  598. "value": "value-VAL",
  599. "label": "",
  600. "error": false
  601. },
  602. {
  603. "rk": "RK_2",
  604. "fm": "A",
  605. "qual": "C",
  606. "ts": 100,
  607. "value": "value-VAL",
  608. "label": "",
  609. "error": false
  610. }
  611. ]
  612. },
  613. {
  614. "name": "two rows empty value",
  615. "chunks": [
  616. "row_key: \"RK_1\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ncommit_row: true\n",
  617. "row_key: \"RK_2\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL\"\ncommit_row: true\n"
  618. ],
  619. "results": [
  620. {
  621. "rk": "RK_1",
  622. "fm": "A",
  623. "qual": "C",
  624. "ts": 0,
  625. "value": "",
  626. "label": "",
  627. "error": false
  628. },
  629. {
  630. "rk": "RK_2",
  631. "fm": "A",
  632. "qual": "C",
  633. "ts": 100,
  634. "value": "value-VAL",
  635. "label": "",
  636. "error": false
  637. }
  638. ]
  639. },
  640. {
  641. "name": "two rows, one with multiple cells",
  642. "chunks": [
  643. "row_key: \"RK_1\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 101\nvalue: \"value-VAL_1\"\ncommit_row: false\n",
  644. "timestamp_micros: 102\nvalue: \"value-VAL_2\"\ncommit_row: true\n",
  645. "row_key: \"RK_2\"\nfamily_name: \u003c\n value: \"B\"\n\u003e\nqualifier: \u003c\n value: \"D\"\n\u003e\ntimestamp_micros: 103\nvalue: \"value-VAL_3\"\ncommit_row: true\n"
  646. ],
  647. "results": [
  648. {
  649. "rk": "RK_1",
  650. "fm": "A",
  651. "qual": "C",
  652. "ts": 101,
  653. "value": "value-VAL_1",
  654. "label": "",
  655. "error": false
  656. },
  657. {
  658. "rk": "RK_1",
  659. "fm": "A",
  660. "qual": "C",
  661. "ts": 102,
  662. "value": "value-VAL_2",
  663. "label": "",
  664. "error": false
  665. },
  666. {
  667. "rk": "RK_2",
  668. "fm": "B",
  669. "qual": "D",
  670. "ts": 103,
  671. "value": "value-VAL_3",
  672. "label": "",
  673. "error": false
  674. }
  675. ]
  676. },
  677. {
  678. "name": "two rows, multiple cells",
  679. "chunks": [
  680. "row_key: \"RK_1\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 101\nvalue: \"value-VAL_1\"\ncommit_row: false\n",
  681. "qualifier: \u003c\n value: \"D\"\n\u003e\ntimestamp_micros: 102\nvalue: \"value-VAL_2\"\ncommit_row: true\n",
  682. "row_key: \"RK_2\"\nfamily_name: \u003c\n value: \"B\"\n\u003e\nqualifier: \u003c\n value: \"E\"\n\u003e\ntimestamp_micros: 103\nvalue: \"value-VAL_3\"\ncommit_row: false\n",
  683. "qualifier: \u003c\n value: \"F\"\n\u003e\ntimestamp_micros: 104\nvalue: \"value-VAL_4\"\ncommit_row: true\n"
  684. ],
  685. "results": [
  686. {
  687. "rk": "RK_1",
  688. "fm": "A",
  689. "qual": "C",
  690. "ts": 101,
  691. "value": "value-VAL_1",
  692. "label": "",
  693. "error": false
  694. },
  695. {
  696. "rk": "RK_1",
  697. "fm": "A",
  698. "qual": "D",
  699. "ts": 102,
  700. "value": "value-VAL_2",
  701. "label": "",
  702. "error": false
  703. },
  704. {
  705. "rk": "RK_2",
  706. "fm": "B",
  707. "qual": "E",
  708. "ts": 103,
  709. "value": "value-VAL_3",
  710. "label": "",
  711. "error": false
  712. },
  713. {
  714. "rk": "RK_2",
  715. "fm": "B",
  716. "qual": "F",
  717. "ts": 104,
  718. "value": "value-VAL_4",
  719. "label": "",
  720. "error": false
  721. }
  722. ]
  723. },
  724. {
  725. "name": "two rows, multiple cells, multiple families",
  726. "chunks": [
  727. "row_key: \"RK_1\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 101\nvalue: \"value-VAL_1\"\ncommit_row: false\n",
  728. "family_name: \u003c\n value: \"B\"\n\u003e\nqualifier: \u003c\n value: \"E\"\n\u003e\ntimestamp_micros: 102\nvalue: \"value-VAL_2\"\ncommit_row: true\n",
  729. "row_key: \"RK_2\"\nfamily_name: \u003c\n value: \"M\"\n\u003e\nqualifier: \u003c\n value: \"O\"\n\u003e\ntimestamp_micros: 103\nvalue: \"value-VAL_3\"\ncommit_row: false\n",
  730. "family_name: \u003c\n value: \"N\"\n\u003e\nqualifier: \u003c\n value: \"P\"\n\u003e\ntimestamp_micros: 104\nvalue: \"value-VAL_4\"\ncommit_row: true\n"
  731. ],
  732. "results": [
  733. {
  734. "rk": "RK_1",
  735. "fm": "A",
  736. "qual": "C",
  737. "ts": 101,
  738. "value": "value-VAL_1",
  739. "label": "",
  740. "error": false
  741. },
  742. {
  743. "rk": "RK_1",
  744. "fm": "B",
  745. "qual": "E",
  746. "ts": 102,
  747. "value": "value-VAL_2",
  748. "label": "",
  749. "error": false
  750. },
  751. {
  752. "rk": "RK_2",
  753. "fm": "M",
  754. "qual": "O",
  755. "ts": 103,
  756. "value": "value-VAL_3",
  757. "label": "",
  758. "error": false
  759. },
  760. {
  761. "rk": "RK_2",
  762. "fm": "N",
  763. "qual": "P",
  764. "ts": 104,
  765. "value": "value-VAL_4",
  766. "label": "",
  767. "error": false
  768. }
  769. ]
  770. },
  771. {
  772. "name": "two rows, four cells, 2 labels",
  773. "chunks": [
  774. "row_key: \"RK_1\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 101\nlabels: \"L_1\"\nvalue: \"value-VAL_1\"\ncommit_row: false\n",
  775. "timestamp_micros: 102\nvalue: \"value-VAL_2\"\ncommit_row: true\n",
  776. "row_key: \"RK_2\"\nfamily_name: \u003c\n value: \"B\"\n\u003e\nqualifier: \u003c\n value: \"D\"\n\u003e\ntimestamp_micros: 103\nlabels: \"L_3\"\nvalue: \"value-VAL_3\"\ncommit_row: false\n",
  777. "timestamp_micros: 104\nvalue: \"value-VAL_4\"\ncommit_row: true\n"
  778. ],
  779. "results": [
  780. {
  781. "rk": "RK_1",
  782. "fm": "A",
  783. "qual": "C",
  784. "ts": 101,
  785. "value": "value-VAL_1",
  786. "label": "L_1",
  787. "error": false
  788. },
  789. {
  790. "rk": "RK_1",
  791. "fm": "A",
  792. "qual": "C",
  793. "ts": 102,
  794. "value": "value-VAL_2",
  795. "label": "",
  796. "error": false
  797. },
  798. {
  799. "rk": "RK_2",
  800. "fm": "B",
  801. "qual": "D",
  802. "ts": 103,
  803. "value": "value-VAL_3",
  804. "label": "L_3",
  805. "error": false
  806. },
  807. {
  808. "rk": "RK_2",
  809. "fm": "B",
  810. "qual": "D",
  811. "ts": 104,
  812. "value": "value-VAL_4",
  813. "label": "",
  814. "error": false
  815. }
  816. ]
  817. },
  818. {
  819. "name": "two rows with splits, same timestamp",
  820. "chunks": [
  821. "row_key: \"RK_1\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"v\"\nvalue_size: 10\ncommit_row: false\n",
  822. "value: \"alue-VAL_1\"\ncommit_row: true\n",
  823. "row_key: \"RK_2\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"v\"\nvalue_size: 10\ncommit_row: false\n",
  824. "value: \"alue-VAL_2\"\ncommit_row: true\n"
  825. ],
  826. "results": [
  827. {
  828. "rk": "RK_1",
  829. "fm": "A",
  830. "qual": "C",
  831. "ts": 100,
  832. "value": "value-VAL_1",
  833. "label": "",
  834. "error": false
  835. },
  836. {
  837. "rk": "RK_2",
  838. "fm": "A",
  839. "qual": "C",
  840. "ts": 100,
  841. "value": "value-VAL_2",
  842. "label": "",
  843. "error": false
  844. }
  845. ]
  846. },
  847. {
  848. "name": "invalid - bare reset",
  849. "chunks": [
  850. "reset_row: true\n"
  851. ],
  852. "results": [
  853. {
  854. "rk": "",
  855. "fm": "",
  856. "qual": "",
  857. "ts": 0,
  858. "value": "",
  859. "label": "",
  860. "error": true
  861. }
  862. ]
  863. },
  864. {
  865. "name": "invalid - bad reset, no commit",
  866. "chunks": [
  867. "reset_row: true\n",
  868. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL\"\ncommit_row: false\n"
  869. ],
  870. "results": [
  871. {
  872. "rk": "",
  873. "fm": "",
  874. "qual": "",
  875. "ts": 0,
  876. "value": "",
  877. "label": "",
  878. "error": true
  879. }
  880. ]
  881. },
  882. {
  883. "name": "invalid - missing key after reset",
  884. "chunks": [
  885. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL\"\ncommit_row: false\n",
  886. "reset_row: true\n",
  887. "timestamp_micros: 100\nvalue: \"value-VAL\"\ncommit_row: true\n"
  888. ],
  889. "results": [
  890. {
  891. "rk": "",
  892. "fm": "",
  893. "qual": "",
  894. "ts": 0,
  895. "value": "",
  896. "label": "",
  897. "error": true
  898. }
  899. ]
  900. },
  901. {
  902. "name": "no data after reset",
  903. "chunks": [
  904. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL\"\ncommit_row: false\n",
  905. "reset_row: true\n"
  906. ],
  907. "results": null
  908. },
  909. {
  910. "name": "simple reset",
  911. "chunks": [
  912. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL\"\ncommit_row: false\n",
  913. "reset_row: true\n",
  914. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL\"\ncommit_row: true\n"
  915. ],
  916. "results": [
  917. {
  918. "rk": "RK",
  919. "fm": "A",
  920. "qual": "C",
  921. "ts": 100,
  922. "value": "value-VAL",
  923. "label": "",
  924. "error": false
  925. }
  926. ]
  927. },
  928. {
  929. "name": "reset to new val",
  930. "chunks": [
  931. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL_1\"\ncommit_row: false\n",
  932. "reset_row: true\n",
  933. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL_2\"\ncommit_row: true\n"
  934. ],
  935. "results": [
  936. {
  937. "rk": "RK",
  938. "fm": "A",
  939. "qual": "C",
  940. "ts": 100,
  941. "value": "value-VAL_2",
  942. "label": "",
  943. "error": false
  944. }
  945. ]
  946. },
  947. {
  948. "name": "reset to new qual",
  949. "chunks": [
  950. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL_1\"\ncommit_row: false\n",
  951. "reset_row: true\n",
  952. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"D\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL_1\"\ncommit_row: true\n"
  953. ],
  954. "results": [
  955. {
  956. "rk": "RK",
  957. "fm": "A",
  958. "qual": "D",
  959. "ts": 100,
  960. "value": "value-VAL_1",
  961. "label": "",
  962. "error": false
  963. }
  964. ]
  965. },
  966. {
  967. "name": "reset with splits",
  968. "chunks": [
  969. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL_1\"\ncommit_row: false\n",
  970. "timestamp_micros: 102\nvalue: \"value-VAL_2\"\ncommit_row: false\n",
  971. "reset_row: true\n",
  972. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL_2\"\ncommit_row: true\n"
  973. ],
  974. "results": [
  975. {
  976. "rk": "RK",
  977. "fm": "A",
  978. "qual": "C",
  979. "ts": 100,
  980. "value": "value-VAL_2",
  981. "label": "",
  982. "error": false
  983. }
  984. ]
  985. },
  986. {
  987. "name": "reset two cells",
  988. "chunks": [
  989. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL_1\"\ncommit_row: false\n",
  990. "reset_row: true\n",
  991. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL_2\"\ncommit_row: false\n",
  992. "timestamp_micros: 103\nvalue: \"value-VAL_3\"\ncommit_row: true\n"
  993. ],
  994. "results": [
  995. {
  996. "rk": "RK",
  997. "fm": "A",
  998. "qual": "C",
  999. "ts": 100,
  1000. "value": "value-VAL_2",
  1001. "label": "",
  1002. "error": false
  1003. },
  1004. {
  1005. "rk": "RK",
  1006. "fm": "A",
  1007. "qual": "C",
  1008. "ts": 103,
  1009. "value": "value-VAL_3",
  1010. "label": "",
  1011. "error": false
  1012. }
  1013. ]
  1014. },
  1015. {
  1016. "name": "two resets",
  1017. "chunks": [
  1018. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL_1\"\ncommit_row: false\n",
  1019. "reset_row: true\n",
  1020. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL_2\"\ncommit_row: false\n",
  1021. "reset_row: true\n",
  1022. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL_3\"\ncommit_row: true\n"
  1023. ],
  1024. "results": [
  1025. {
  1026. "rk": "RK",
  1027. "fm": "A",
  1028. "qual": "C",
  1029. "ts": 100,
  1030. "value": "value-VAL_3",
  1031. "label": "",
  1032. "error": false
  1033. }
  1034. ]
  1035. },
  1036. {
  1037. "name": "reset then two cells",
  1038. "chunks": [
  1039. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL_1\"\ncommit_row: false\n",
  1040. "reset_row: true\n",
  1041. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"B\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL_2\"\ncommit_row: false\n",
  1042. "qualifier: \u003c\n value: \"D\"\n\u003e\ntimestamp_micros: 103\nvalue: \"value-VAL_3\"\ncommit_row: true\n"
  1043. ],
  1044. "results": [
  1045. {
  1046. "rk": "RK",
  1047. "fm": "B",
  1048. "qual": "C",
  1049. "ts": 100,
  1050. "value": "value-VAL_2",
  1051. "label": "",
  1052. "error": false
  1053. },
  1054. {
  1055. "rk": "RK",
  1056. "fm": "B",
  1057. "qual": "D",
  1058. "ts": 103,
  1059. "value": "value-VAL_3",
  1060. "label": "",
  1061. "error": false
  1062. }
  1063. ]
  1064. },
  1065. {
  1066. "name": "reset to new row",
  1067. "chunks": [
  1068. "row_key: \"RK_1\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL_1\"\ncommit_row: false\n",
  1069. "reset_row: true\n",
  1070. "row_key: \"RK_2\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL_2\"\ncommit_row: true\n"
  1071. ],
  1072. "results": [
  1073. {
  1074. "rk": "RK_2",
  1075. "fm": "A",
  1076. "qual": "C",
  1077. "ts": 100,
  1078. "value": "value-VAL_2",
  1079. "label": "",
  1080. "error": false
  1081. }
  1082. ]
  1083. },
  1084. {
  1085. "name": "reset in between chunks",
  1086. "chunks": [
  1087. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nlabels: \"L\"\nvalue: \"v\"\nvalue_size: 10\ncommit_row: false\n",
  1088. "value: \"a\"\nvalue_size: 10\ncommit_row: false\n",
  1089. "reset_row: true\n",
  1090. "row_key: \"RK_1\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL_1\"\ncommit_row: true\n"
  1091. ],
  1092. "results": [
  1093. {
  1094. "rk": "RK_1",
  1095. "fm": "A",
  1096. "qual": "C",
  1097. "ts": 100,
  1098. "value": "value-VAL_1",
  1099. "label": "",
  1100. "error": false
  1101. }
  1102. ]
  1103. },
  1104. {
  1105. "name": "invalid - reset with chunk",
  1106. "chunks": [
  1107. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nlabels: \"L\"\nvalue: \"v\"\nvalue_size: 10\ncommit_row: false\n",
  1108. "value: \"a\"\nvalue_size: 10\nreset_row: true\n"
  1109. ],
  1110. "results": [
  1111. {
  1112. "rk": "",
  1113. "fm": "",
  1114. "qual": "",
  1115. "ts": 0,
  1116. "value": "",
  1117. "label": "",
  1118. "error": true
  1119. }
  1120. ]
  1121. },
  1122. {
  1123. "name": "invalid - commit with chunk",
  1124. "chunks": [
  1125. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nlabels: \"L\"\nvalue: \"v\"\nvalue_size: 10\ncommit_row: false\n",
  1126. "value: \"a\"\nvalue_size: 10\ncommit_row: true\n"
  1127. ],
  1128. "results": [
  1129. {
  1130. "rk": "",
  1131. "fm": "",
  1132. "qual": "",
  1133. "ts": 0,
  1134. "value": "",
  1135. "label": "",
  1136. "error": true
  1137. }
  1138. ]
  1139. },
  1140. {
  1141. "name": "empty cell chunk",
  1142. "chunks": [
  1143. "row_key: \"RK\"\nfamily_name: \u003c\n value: \"A\"\n\u003e\nqualifier: \u003c\n value: \"C\"\n\u003e\ntimestamp_micros: 100\nvalue: \"value-VAL\"\ncommit_row: false\n",
  1144. "commit_row: false\n",
  1145. "commit_row: true\n"
  1146. ],
  1147. "results": [
  1148. {
  1149. "rk": "RK",
  1150. "fm": "A",
  1151. "qual": "C",
  1152. "ts": 100,
  1153. "value": "value-VAL",
  1154. "label": "",
  1155. "error": false
  1156. },
  1157. {
  1158. "rk": "RK",
  1159. "fm": "A",
  1160. "qual": "C",
  1161. "ts": 0,
  1162. "value": "",
  1163. "label": "",
  1164. "error": false
  1165. },
  1166. {
  1167. "rk": "RK",
  1168. "fm": "A",
  1169. "qual": "C",
  1170. "ts": 0,
  1171. "value": "",
  1172. "label": "",
  1173. "error": false
  1174. }
  1175. ]
  1176. }
  1177. ]
  1178. }