--- title: Arch 2/screen history --- ```yaml tarantool> box.space.other.index.sec:select({'str123',123}) --- - - [123, 'str123'] ... tarantool> box.space.other.index.sec:pairs({'str123'}, { iterator ='GE' }):take(5):totable() --- - - [123, 'str123'] - [1230, 'str1230'] - [12300, 'str12300'] - [12301, 'str12301'] - [12302, 'str12302'] ... tarantool> \set language sql --- - true ... tarantool> select * from other limit 10; --- - null - Space 'OTHER' does not exist ... tarantool> select * from "other" limit 10; --- - null - SQL does not support space without format ... tarantool> \set language lua --- - true ... tarantool> box.space.other:format( { {name = "id", type = "int"}, { name ="value", type = "str" } } ) --- - error: 'Can''t modify space ''other'': field 1 has unknown field type' ... tarantool> box.space.other:format( { {name = "id", type = "integer"}, { name ="value", type = "str" } } ) --- ... tarantool> box.space.other:format( { {name = "id"}, { name ="value", type = "str" } } ) --- ... tarantool> box.space.other:format( { {name = "id" }, { name ="value" } } ) --- ... tarantool> box.space.other:format( {} ) --- ... tarantool> box.space.other:format( ) --- - [] ... tarantool> box.space.other:format( { {name = "id" }, { name ="value" } } ) --- ... tarantool> box.space.other:format( ) --- - [{'name': 'id', 'type': 'any'}, {'name': 'value', 'type': 'any'}] ... tarantool> box.space.other:format( { {name = "id", type = "integer" }, { name ="value", type = "str" } } ) --- ... tarantool> \set language sql --- - true ... tarantool> select * from "other" limit 10; --- - metadata: - name: id type: integer - name: value type: string rows: - [1, 'str1'] - [2, 'str2'] - [3, 'str3'] - [4, 'str4'] - [5, 'str5'] - [6, 'str6'] - [7, 'str7'] - [8, 'str8'] - [9, 'str9'] - [10, 'str10'] ... tarantool> select * from "other" order by id desc limit 10; --- - null - Can’t resolve field 'ID' ... tarantool> select * from "other" order by "id" desc limit 10; --- - metadata: - name: id type: integer - name: value type: string rows: - [100000, 'str100000'] - [99999, 'str99999'] - [99998, 'str99998'] - [99997, 'str99997'] - [99996, 'str99996'] - [99995, 'str99995'] - [99994, 'str99994'] - [99993, 'str99993'] - [99992, 'str99992'] - [99991, 'str99991'] ... tarantool> select * from "other" where id > 50000 order by "id" desc limit 10; --- - null - Can’t resolve field 'ID' ... tarantool> select * from "other" where "id" > 50000 order by "id" desc limit 10; --- - metadata: - name: id type: integer - name: value type: string rows: - [100000, 'str100000'] - [99999, 'str99999'] - [99998, 'str99998'] - [99997, 'str99997'] - [99996, 'str99996'] - [99995, 'str99995'] - [99994, 'str99994'] - [99993, 'str99993'] - [99992, 'str99992'] - [99991, 'str99991'] ... tarantool> select * from "other" where "id" > 50000 limit 10; --- - metadata: - name: id type: integer - name: value type: string rows: - [50001, 'str50001'] - [50002, 'str50002'] - [50003, 'str50003'] - [50004, 'str50004'] - [50005, 'str50005'] - [50006, 'str50006'] - [50007, 'str50007'] - [50008, 'str50008'] - [50009, 'str50009'] - [50010, 'str50010'] ... tarantool> select * from "other" where "id" > 50000 2020-05-07 14:34:57.005 [23627] snapshot/101/main I> saving snapshot `./00000000000000100030.snap.inprogress' 2020-05-07 14:34:57.037 [23627] snapshot/101/main C> 0.1M rows written 2020-05-07 14:34:57.046 [23627] snapshot/101/main I> done 2020-05-07 14:34:57.047 [23627] main/104/checkpoint_daemon I> scheduled next checkpoint for Thu May 7 15:34:56 2020 --- - metadata: - name: id type: integer - name: value type: string rows: - [50001, 'str50001'] - [50002, 'str50002'] - [50003, 'str50003'] - [50004, 'str50004'] - [50005, 'str50005'] - [50006, 'str50006'] - [50007, 'str50007'] - [50008, 'str50008'] - [50009, 'str50009'] - [50010, 'str50010'] ... tarantool> select * from "other" where "id" > 50000 order by "id" desc limit 10; --- - metadata: - name: id type: integer - name: value type: string rows: - [100000, 'str100000'] - [99999, 'str99999'] - [99998, 'str99998'] - [99997, 'str99997'] - [99996, 'str99996'] - [99995, 'str99995'] - [99994, 'str99994'] - [99993, 'str99993'] - [99992, 'str99992'] - [99991, 'str99991'] ... tarantool> select * from "other" where "id" < 50000 order by "id" desc, "value" asc limit 10; --- - null - ORDER BY with LIMIT does not support different sorting orders ... tarantool> select * from "other" where "id" < 50000 order by "id" desc, "value" desc limit 10; --- - metadata: - name: id type: integer - name: value type: string rows: - [49999, 'str49999'] - [49998, 'str49998'] - [49997, 'str49997'] - [49996, 'str49996'] - [49995, 'str49995'] - [49994, 'str49994'] - [49993, 'str49993'] - [49992, 'str49992'] - [49991, 'str49991'] - [49990, 'str49990'] ... tarantool> select * from "other" where "id" > 50000 order by "id" desc, "value" desc limit 10; --- - metadata: - name: id type: integer - name: value type: string rows: - [100000, 'str100000'] - [99999, 'str99999'] - [99998, 'str99998'] - [99997, 'str99997'] - [99996, 'str99996'] - [99995, 'str99995'] - [99994, 'str99994'] - [99993, 'str99993'] - [99992, 'str99992'] - [99991, 'str99991'] ... tarantool> select * from "other" where "id" < 50000 order by "id" desc, "value" desc limit 10; --- - metadata: - name: id type: integer - name: value type: string rows: - [49999, 'str49999'] - [49998, 'str49998'] - [49997, 'str49997'] - [49996, 'str49996'] - [49995, 'str49995'] - [49994, 'str49994'] - [49993, 'str49993'] - [49992, 'str49992'] - [49991, 'str49991'] - [49990, 'str49990'] ... tarantool> explain select * from "other" where "id" < 50000 order by "id" desc, "value" desc limit 10; --- - metadata: - name: addr type: INTEGER - name: opcode type: TEXT - name: p1 type: INTEGER - name: p2 type: INTEGER - name: p3 type: INTEGER - name: p4 type: TEXT - name: p5 type: TEXT - name: comment type: TEXT rows: - [0, 'Init', 0, 1, 0, '', '00', null] - [1, 'Noop', 1, 5, 0, '', '00', null] - [2, 'Noop', 1, 0, 1, '', '00', null] - [3, 'Integer', 10, 2, 0, '', '00', null] - [4, 'MustBeInt', 2, 7, 0, '', '00', null] - [5, 'Integer', 0, 3, 0, '', '00', null] - [6, 'Ge', 3, 9, 2, '', '00', null] - [7, 'SetDiag', 159, 0, 0, 'Failed to execute SQL statement: Only positive integers are allowed in the LIMIT clause', '00', null] - [8, 'Halt', -1, 0, 0, '', '00', null] - [9, 'Eq', 3, 19, 2, '', '00', null] - [10, 'IteratorOpen', 2, 0, 0, 'space<name=other>', '00', null] - [11, 'Integer', 50000, 4, 0, '', '00', null] - [12, 'ApplyType', 4, 1, 0, "\x01", '00', null] - [13, 'SeekLT', 2, 19, 4, '1', '04', null] - [14, 'Column', 2, 0, 5, '', '00', null] - [15, 'Column', 2, 1, 6, '', '00', null] - [16, 'ResultRow', 5, 2, 0, '', '00', null] - [17, 'DecrJumpZero', 2, 19, 0, '', '00', null] - [18, 'Prev', 2, 14, 0, '', '00', null] - [19, 'Halt', 0, 0, 0, '', '00', null] ... tarantool> create table test(id int primary key) --- - row_count: 1 ... tarantool> drop table test --- - row_count: 1 ... tarantool> create table test(id int primary key, value str) --- - null - Syntax error near 'str' ... tarantool> create table test(id int primary key, value string) --- - row_count: 1 ... tarantool> insert into test values(1,"asjkhdaskd"),(2,"zxczxc") --- - null - Can’t resolve field 'zxczxc' ... tarantool> insert into test values(1,'asjkhdaskd'),(2,'zxczxc') --- - row_count: 2 ... tarantool> \set language lua --- - true ... tarantool> box.space --- - TEST: is_local: false temporary: false engine: memtx test: is_local: false temporary: false engine: memtx other: is_local: false temporary: false engine: memtx ... tarantool> --- ... tarantool> box.space.TEST:select() --- - - [1, 'asjkhdaskd'] - [2, 'zxczxc'] ... tarantool> box.space.TEST:format() --- - [{'type': 'integer', 'nullable_action': 'abort', 'name': 'ID', 'is_nullable': false}, {'type': 'string', 'nullable_action': 'none', 'name': 'VALUE', 'is_nullable': true}] ... tarantool> local v = "string" return v --- - string ... tarantool> local v = 'string' return v --- - string ... tarantool> local v = [[string]] return v --- - string ... tarantool> local v = [[sdkdlkfsj " ' string]] return v --- - sdkdlkfsj " ' string ... tarantool> box.execute([[ select * from "other" where "id" < 50000 order by "id" desc, "value" desc limit 10; ]]) --- - metadata: - name: id type: integer - name: value type: string rows: - [49999, 'str49999'] - [49998, 'str49998'] - [49997, 'str49997'] - [49996, 'str49996'] - [49995, 'str49995'] - [49994, 'str49994'] - [49993, 'str49993'] - [49992, 'str49992'] - [49991, 'str49991'] - [49990, 'str49990'] ... tarantool> local res = box.execute([[ select * from "other" where "id" < 50000 order by "id" desc, "value" desc limit 10; ]]) return res.metadata --- - - name: id type: integer - name: value type: string ... tarantool> local res = box.execute([[ select * from "other" where "id" < 50000 order by "id" desc, "value" desc limit 10; ]]) return res.rows[10] --- - [49990, 'str49990'] ... tarantool> local res = box.execute([[ select * from "other" where "id" < 50000 order by "id" desc, "value" desc limit 10; ]]) return res.rows--- - - [49999, 'str49999'] - [49998, 'str49998'] - [49997, 'str49997'] - [49996, 'str49996'] - [49995, 'str49995'] - [49994, 'str49994'] - [49993, 'str49993'] - [49992, 'str49992'] - [49991, 'str49991'] - [49990, 'str49990'] ... tarantool> local res = box.execute([[ select * from "other" where "id" < ? order by "id" desc limit 10; ]], { 500 }) return res.rows --- - - [499, 'str499'] - [498, 'str498'] - [497, 'str497'] - [496, 'str496'] - [495, 'str495'] - [494, 'str494'] - [493, 'str493'] - [492, 'str492'] - [491, 'str491'] - [490, 'str490'] ... tarantool> help() --- - - | To get help, see the Tarantool manual at https://tarantool.io/en/doc/ To start the interactive Tarantool tutorial, type 'tutorial()' here. Available backslash commands: \set language <language> -- set language (lua or sql) \set output <format> -- set output format (lua[,line|block] or yaml) \set delimiter <delimiter> -- set expression delimiter \help -- show this screen \quit -- quit interactive console ... tarantool> \set language lua--- - true ... tarantool> box.schema.create_space('joined')--- - engine: memtx before_replace: 'function: 0x406498a0' on_replace: 'function: 0x40649878' ck_constraint: [] field_count: 0 temporary: false index: [] is_local: false enabled: false name: joined id: 516 - created ... tarantool> for i = 1,1e5 do box.space.joined:insert{ i, "othe value"..i } end2020-05-07 14:45:41.320 [23627] main/102/interactive space.h:314 E> ER_NO_SUCH_INDEX_ID: No index #0 is defined in space 'joined' --- - error: 'No index #0 is defined in space ''joined''' ... tarantool> box.space.joined:create_index('pri') --- - unique: true parts: - type: unsigned is_nullable: false fieldno: 1 id: 0 space_id: 516 type: TREE name: pri ... tarantool> for i = 1,1e5 do box.space.joined:insert{ i, "othe value"..i } end --- ... tarantool> box.space.other:pairs({50000},{iterator = 'GT'}):take(10):totable() --- - - [50001, 'str50001'] - [50002, 'str50002'] - [50003, 'str50003'] - [50004, 'str50004'] - [50005, 'str50005'] - [50006, 'str50006'] - [50007, 'str50007'] - [50008, 'str50008'] - [50009, 'str50009'] - [50010, 'str50010'] ... tarantool> box.space.other:pairs({50000},{iterator = 'GT'}):map(function(v) print(v) end):take(10):totable() [50001, 'str50001'] [50002, 'str50002'] [50003, 'str50003'] [50004, 'str50004'] [50005, 'str50005'] [50006, 'str50006'] [50007, 'str50007'] [50008, 'str50008'] [50009, 'str50009'] [50010, 'str50010'] --- - [] ... tarantool> box.space.other:pairs({50000},{iterator = 'GT'}):map(function(v) print(v) return v end):take(10):totable() [50001, 'str50001'] [50002, 'str50002'] [50003, 'str50003'] [50004, 'str50004'] [50005, 'str50005'] [50006, 'str50006'] [50007, 'str50007'] [50008, 'str50008'] [50009, 'str50009'] [50010, 'str50010'] --- - - [50001, 'str50001'] - [50002, 'str50002'] - [50003, 'str50003'] - [50004, 'str50004'] - [50005, 'str50005'] - [50006, 'str50006'] - [50007, 'str50007'] - [50008, 'str50008'] - [50009, 'str50009'] - [50010, 'str50010'] ... tarantool> box.space.other:pairs({50000},{iterator = 'GT'}):map(function(v) local j = box.space.joined:get{ v[1] } return v,j end):take(10):totable() --- - - [50001, 'str50001'] - [50002, 'str50002'] - [50003, 'str50003'] - [50004, 'str50004'] - [50005, 'str50005'] - [50006, 'str50006'] - [50007, 'str50007'] - [50008, 'str50008'] - [50009, 'str50009'] - [50010, 'str50010'] ... tarantool> box.space.other:pairs({50000},{iterator = 'GT'}):map(function(v) local j = box.space.joined:get{ v[1] } return { v,j } end):take(10):totable() --- - - - [50001, 'str50001'] - [50001, 'othe value50001'] - - [50002, 'str50002'] - [50002, 'othe value50002'] - - [50003, 'str50003'] - [50003, 'othe value50003'] - - [50004, 'str50004'] - [50004, 'othe value50004'] - - [50005, 'str50005'] - [50005, 'othe value50005'] - - [50006, 'str50006'] - [50006, 'othe value50006'] - - [50007, 'str50007'] - [50007, 'othe value50007'] - - [50008, 'str50008'] - [50008, 'othe value50008'] - - [50009, 'str50009'] - [50009, 'othe value50009'] - - [50010, 'str50010'] - [50010, 'othe value50010'] ... tarantool> box.space.other:pairs({50000},{iterator = 'GT'}):map(function(v) local j = box.space.joined:get{ v[1] } v = v:unpack() if j then table.insert(v,#v,j:totable()) end end):take(10):totable() --- - error: '[string "return box.space.other:pairs({50000},{iterato..."]:1: attempt to get length of local ''v'' (a number value)' ... tarantool> box.space.other:pairs({50000},{iterator = 'GT'}):map(function(v) local j = box.space.joined:get{ v[1] } v = v:unpack() if j then table.insert(v,j:totable()) end end):take(10):totable() --- - error: '[string "return box.space.other:pairs({50000},{iterato..."]:1: bad argument #1 to ''insert'' (table expected, got number)' ... tarantool> box.tuple.new( {1,2,3} ):unpack()--- - 1 - 2 - 3 ... tarantool> box.tuple.new( {1,2,3} ):totable() --- - [1, 2, 3] ... tarantool> box.space.other:pairs({50000},{iterator = 'GT'}):map(function(v) local j = box.space.joined:get{ v[1] } v = v:totable() if j then table.insert(v,#v,j:totable()) end end):take(10):totable() --- - [] ... tarantool> box.space.other:pairs({50000},{iterator = 'GT'}):map(function(v) local j = box.space.joined:get{ v[1] } v = v:totable() if j then table.insert(v,#v,j:totable()) end return v end):take(10):totable() --- - - [50001, [50001, 'othe value50001'], 'str50001'] - [50002, [50002, 'othe value50002'], 'str50002'] - [50003, [50003, 'othe value50003'], 'str50003'] - [50004, [50004, 'othe value50004'], 'str50004'] - [50005, [50005, 'othe value50005'], 'str50005'] - [50006, [50006, 'othe value50006'], 'str50006'] - [50007, [50007, 'othe value50007'], 'str50007'] - [50008, [50008, 'othe value50008'], 'str50008'] - [50009, [50009, 'othe value50009'], 'str50009'] - [50010, [50010, 'othe value50010'], 'str50010'] ... tarantool> box.space.other:pairs({50000},{iterator = 'GT'}):map(function(v) local j = box.space.joined:get{ v[1] } v = v:totable() if j then table.insert(v,#v+1,j:totable()) end return v end):take(10):totable() --- - - [50001, 'str50001', [50001, 'othe value50001']] - [50002, 'str50002', [50002, 'othe value50002']] - [50003, 'str50003', [50003, 'othe value50003']] - [50004, 'str50004', [50004, 'othe value50004']] - [50005, 'str50005', [50005, 'othe value50005']] - [50006, 'str50006', [50006, 'othe value50006']] - [50007, 'str50007', [50007, 'othe value50007']] - [50008, 'str50008', [50008, 'othe value50008']] - [50009, 'str50009', [50009, 'othe value50009']] - [50010, 'str50010', [50010, 'othe value50010']] ... tarantool> box.space.other:pairs({50000},{iterator = 'GT'}):map(function(v) local j = box.space.joined:get{ v[1] } v = v:totable() if j then table.insert(v,#v+1,j:totable()) end return v end):take(10):totable() --- - - [50001, 'str50001', [50001, 'othe value50001']] - [50002, 'str50002', [50002, 'othe value50002']] - [50003, 'str50003', [50003, 'othe value50003']] - [50004, 'str50004', [50004, 'othe value50004']] - [50005, 'str50005', [50005, 'othe value50005']] - [50006, 'str50006', [50006, 'othe value50006']] - [50007, 'str50007', [50007, 'othe value50007']] - [50008, 'str50008', [50008, 'othe value50008']] - [50009, 'str50009', [50009, 'othe value50009']] - [50010, 'str50010', [50010, 'othe value50010']] ... tarantool> box.space.joined:format({{name="id",type="number"},{name="value",type="string"}})--- ... tarantool> \set language sql --- - true ... tarantool> select * from "other" inner join "joined" on "other".id == "joined"."id" limit 1 --- - null - Field 'ID' was not found in space 'other' format ... tarantool> select * from "other" inner join "joined" on "other"."id" == "joined"."id" limit 1; --- - metadata: - name: id type: integer - name: value type: string - name: id type: number - name: value type: string rows: - [1, 'str1', 1, 'othe value1'] ... tarantool> select * from "other" inner join "joined" on "other"."id" == "joined"."id" limit 10; --- - metadata: - name: id type: integer - name: value type: string - name: id type: number - name: value type: string rows: - [1, 'str1', 1, 'othe value1'] - [2, 'str2', 2, 'othe value2'] - [3, 'str3', 3, 'othe value3'] - [4, 'str4', 4, 'othe value4'] - [5, 'str5', 5, 'othe value5'] - [6, 'str6', 6, 'othe value6'] - [7, 'str7', 7, 'othe value7'] - [8, 'str8', 8, 'othe value8'] - [9, 'str9', 9, 'othe value9'] - [10, 'str10', 10, 'othe value10'] ... tarantool> select * from "other" inner join "joined" using ("id") limit 10; --- - metadata: - name: id type: integer - name: value type: string - name: value type: string rows: - [1, 'str1', 'othe value1'] - [2, 'str2', 'othe value2'] - [3, 'str3', 'othe value3'] - [4, 'str4', 'othe value4'] - [5, 'str5', 'othe value5'] - [6, 'str6', 'othe value6'] - [7, 'str7', 'othe value7'] - [8, 'str8', 'othe value8'] - [9, 'str9', 'othe value9'] - [10, 'str10', 'othe value10'] ... tarantool> select * from "other" inner join "joined" on "other"."id" = "joined"."id" limit 10; --- - metadata: - name: id type: integer - name: value type: string - name: id type: number - name: value type: string rows: - [1, 'str1', 1, 'othe value1'] - [2, 'str2', 2, 'othe value2'] - [3, 'str3', 3, 'othe value3'] - [4, 'str4', 4, 'othe value4'] - [5, 'str5', 5, 'othe value5'] - [6, 'str6', 6, 'othe value6'] - [7, 'str7', 7, 'othe value7'] - [8, 'str8', 8, 'othe value8'] - [9, 'str9', 9, 'othe value9'] - [10, 'str10', 10, 'othe value10'] ... tarantool> select * from "other","joined" where "other"."id" = "joined"."id" limit 10; --- - metadata: - name: id type: integer - name: value type: string - name: id type: number - name: value type: string rows: - [1, 'str1', 1, 'othe value1'] - [2, 'str2', 2, 'othe value2'] - [3, 'str3', 3, 'othe value3'] - [4, 'str4', 4, 'othe value4'] - [5, 'str5', 5, 'othe value5'] - [6, 'str6', 6, 'othe value6'] - [7, 'str7', 7, 'othe value7'] - [8, 'str8', 8, 'othe value8'] - [9, 'str9', 9, 'othe value9'] - [10, 'str10', 10, 'othe value10'] ... tarantool> \set language lua --- - true ... tarantool> for i = 1e5+1,1e6 do box.space.joined:insert{ i, "other value "..i } end --- ... tarantool> box.space.joined:select() return 1 --- - 1 ... tarantool> clock = requre 'clock' --- - error: '[string "clock = requre ''clock''"]:1: attempt to call global ''requre'' (a nil value)' ... tarantool> clock = require 'clock' --- ... tarantool> clock.time() --- - 1588863381.3289 ... tarantool> clock.time() --- - 1588863382.4993 ... tarantool> local s = clock.time() box.space.joined:select() return clock.time() - s --- - 1.9611032009125 ... tarantool> box.space.joined:len() --- - 1000000 ... tarantool> local s = clock.time() box.execute[[ select * from joined; ]] return clock.time() - s --- - 0.0002589225769043 ... tarantool> local s = clock.time() local t = box.execute[[ select * from joined; ]] return clock.time() - s --- - 3.4093856811523e-05 ... tarantool> local s = clock.time() local t = box.execute[[ select * from joined; ]] return clock.time() - s, #t --- - error: '[string "local s = clock.time() local t = box.execute[..."]:1: attempt to get length of local ''t'' (a nil value)' ... tarantool> local s = clock.time() local t,e = box.execute[[ select * from joined; ]] return clock.time() - s,t,e --- - 7.0571899414062e-05 - null - Space 'JOINED' does not exist ... tarantool> local s = clock.time() local t,e = box.execute[[ select * from "joined"; ]] return clock.time() - s,t and #t,e --- - 2.5693655014038 - 0 - null ... tarantool> local s = clock.time() local t,e = box.execute[[ select * from "joined"; ]] return clock.time() - s,t and #t.rows,e --- - 1.9235806465149 - 1000000 - null ... tarantool> local s = clock.time() local t = box.space.joined:select() return clock.time() - s, t and #t --- - 0.77890610694885 - 1000000 ... tarantool> local s = clock.proc() local t,e = box.execute[[ select * from "joined"; ]] return clock.proc() - s,t and #t.rows,e --- - 2.132948403 - 1000000 - null ... tarantool> local s = clock.proc() local t = box.space.joined:select() return clock.proc() - s, t and #t --- - 2.284710027 - 1000000 ... tarantool> local s = clock.proc() local t = box.space.joined:select() return clock.proc() - s, t and #t --- - 0.666978833 - 1000000 ... tarantool> local s = clock.proc() local t = box.space.joined:select() return clock.proc() - s, t and #t --- - 2.001014359 - 1000000 ... tarantool> local s = clock.proc() local t = box.space.joined:select() return clock.proc() - s, t and #t --- - 2.635731749 - 1000000 ... tarantool> local s = clock.proc() local t = box.space.joined:select() return clock.proc() - s, t and #t --- - 0.895570485 - 1000000 ... tarantool> [1]+ Stopped tarantool [centos@zinc sample]$ htop [centos@zinc sample]$ atop bash: atop: command not found [centos@zinc sample]$ sudo dnf install -y atop Last metadata expiration check: 2:15:17 ago on Thu 07 May 2020 12:45:41 PM UTC. Dependencies resolved. ============================================================================================================================================== Package Arch Version Repository Size ============================================================================================================================================== Installing: atop x86_64 2.4.0-4.el8 epel 187 k Transaction Summary ============================================================================================================================================== Install 1 Package Total download size: 187 k Installed size: 432 k Downloading Packages: atop-2.4.0-4.el8.x86_64.rpm 178 kB/s | 187 kB 00:01 ---------------------------------------------------------------------------------------------------------------------------------------------- Total 66 kB/s | 187 kB 00:02 Running transaction check Transaction check succeeded. Running transaction test Transaction test succeeded. Running transaction Preparing : 1/1 Installing : atop-2.4.0-4.el8.x86_64 1/1 Running scriptlet: atop-2.4.0-4.el8.x86_64 1/1 Verifying : atop-2.4.0-4.el8.x86_64 1/1 Installed: atop-2.4.0-4.el8.x86_64 Complete! [centos@zinc sample]$ atop [centos@zinc sample]$ fg tarantool --- ... tarantool> clock.proc64() --- - 42310712958 ... tarantool> clock.time64() --- - 1588863707401324526 ... tarantool> clock.time64(), clock.time64() --- - 1588863722206672701 - 1588863722206673141 ... tarantool> clock.time64()-clock.time64() --- - 18446744073709541207 ... tarantool> -clock.time64()+clock.time64() --- - 1815 ... tarantool> -clock.time64()+clock.time64() --- - 2421 ... tarantool> -clock.time64()+clock.time64() --- - 2393 ... tarantool> ```