├── .gitignore ├── BugsAndTodos.md ├── README.md ├── arch.png ├── backend ├── dm │ ├── data_manager.go │ ├── data_manager_test.go │ ├── dataitem.go │ ├── doc.go │ ├── logger │ │ ├── logger.go │ │ ├── logger_test.go │ │ └── mock_logger.go │ ├── mock_dm.go │ ├── page1.go │ ├── pageX.go │ ├── pcacher │ │ ├── mock_pcacher.go │ │ ├── page.go │ │ ├── pcacher.go │ │ ├── pcacher_test.go │ │ └── types.go │ ├── pindex │ │ ├── pindex.go │ │ └── pindex_test.go │ ├── recovery.go │ └── types.go ├── im │ ├── node.go │ ├── tree.go │ └── tree_test.go ├── launcher │ ├── create.sh │ ├── launcher.go │ └── open.sh ├── parser │ ├── parse_test.go │ ├── parser.go │ ├── statement │ │ └── statements.go │ ├── syntax.txt │ ├── tokener.go │ └── tokener_test.go ├── protocols │ ├── dataitem.go │ ├── doc.go │ ├── page.go │ ├── recovery.go │ ├── tree_concurrence.go │ └── tree_recovery.go ├── server │ ├── executor.go │ ├── executor_test.go │ └── server.go ├── sm │ ├── entry.go │ ├── locktable │ │ ├── lock_table.go │ │ └── lock_table_test.go │ ├── serializability_manager.go │ ├── test │ │ ├── client │ │ │ └── client.go │ │ └── server │ │ │ ├── create.sh │ │ │ ├── open.sh │ │ │ └── server.go │ ├── transaction.go │ └── visibility.go ├── tbm │ ├── field.go │ ├── table.go │ └── table_manager.go ├── testInsert.go ├── tm │ ├── mock_tm.go │ ├── transaction_manager.go │ ├── transaction_manager_test.go │ └── xid.go └── utils │ ├── booter │ ├── booter.go │ └── booter_test.go │ ├── cacher │ ├── cacher.go │ ├── cacher_test.go │ └── mock_cacher.go │ ├── int_encoding.go │ ├── int_encoding_test.go │ ├── str_encoding.go │ ├── str_encoding_test.go │ ├── test.go │ └── types.go ├── client ├── client │ ├── client.go │ ├── round_tripper.go │ └── shell.go └── launcher.go ├── test └── multi_insert │ ├── doc.go │ ├── multi_insert.go │ ├── multi_insert_commit.go │ └── start.sh └── transporter ├── doc.go ├── packager.go ├── protocoler.go └── transporter.go /.gitignore: -------------------------------------------------------------------------------- 1 | *.input 2 | -------------------------------------------------------------------------------- /BugsAndTodos.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/BugsAndTodos.md -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/README.md -------------------------------------------------------------------------------- /arch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/arch.png -------------------------------------------------------------------------------- /backend/dm/data_manager.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/dm/data_manager.go -------------------------------------------------------------------------------- /backend/dm/data_manager_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/dm/data_manager_test.go -------------------------------------------------------------------------------- /backend/dm/dataitem.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/dm/dataitem.go -------------------------------------------------------------------------------- /backend/dm/doc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/dm/doc.go -------------------------------------------------------------------------------- /backend/dm/logger/logger.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/dm/logger/logger.go -------------------------------------------------------------------------------- /backend/dm/logger/logger_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/dm/logger/logger_test.go -------------------------------------------------------------------------------- /backend/dm/logger/mock_logger.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/dm/logger/mock_logger.go -------------------------------------------------------------------------------- /backend/dm/mock_dm.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/dm/mock_dm.go -------------------------------------------------------------------------------- /backend/dm/page1.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/dm/page1.go -------------------------------------------------------------------------------- /backend/dm/pageX.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/dm/pageX.go -------------------------------------------------------------------------------- /backend/dm/pcacher/mock_pcacher.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/dm/pcacher/mock_pcacher.go -------------------------------------------------------------------------------- /backend/dm/pcacher/page.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/dm/pcacher/page.go -------------------------------------------------------------------------------- /backend/dm/pcacher/pcacher.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/dm/pcacher/pcacher.go -------------------------------------------------------------------------------- /backend/dm/pcacher/pcacher_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/dm/pcacher/pcacher_test.go -------------------------------------------------------------------------------- /backend/dm/pcacher/types.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/dm/pcacher/types.go -------------------------------------------------------------------------------- /backend/dm/pindex/pindex.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/dm/pindex/pindex.go -------------------------------------------------------------------------------- /backend/dm/pindex/pindex_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/dm/pindex/pindex_test.go -------------------------------------------------------------------------------- /backend/dm/recovery.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/dm/recovery.go -------------------------------------------------------------------------------- /backend/dm/types.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/dm/types.go -------------------------------------------------------------------------------- /backend/im/node.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/im/node.go -------------------------------------------------------------------------------- /backend/im/tree.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/im/tree.go -------------------------------------------------------------------------------- /backend/im/tree_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/im/tree_test.go -------------------------------------------------------------------------------- /backend/launcher/create.sh: -------------------------------------------------------------------------------- 1 | go run launcher.go -create="/tmp/nya" 2 | -------------------------------------------------------------------------------- /backend/launcher/launcher.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/launcher/launcher.go -------------------------------------------------------------------------------- /backend/launcher/open.sh: -------------------------------------------------------------------------------- 1 | go run launcher.go -open "/tmp/nya" 2 | -------------------------------------------------------------------------------- /backend/parser/parse_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/parser/parse_test.go -------------------------------------------------------------------------------- /backend/parser/parser.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/parser/parser.go -------------------------------------------------------------------------------- /backend/parser/statement/statements.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/parser/statement/statements.go -------------------------------------------------------------------------------- /backend/parser/syntax.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/parser/syntax.txt -------------------------------------------------------------------------------- /backend/parser/tokener.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/parser/tokener.go -------------------------------------------------------------------------------- /backend/parser/tokener_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/parser/tokener_test.go -------------------------------------------------------------------------------- /backend/protocols/dataitem.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/protocols/dataitem.go -------------------------------------------------------------------------------- /backend/protocols/doc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/protocols/doc.go -------------------------------------------------------------------------------- /backend/protocols/page.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/protocols/page.go -------------------------------------------------------------------------------- /backend/protocols/recovery.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/protocols/recovery.go -------------------------------------------------------------------------------- /backend/protocols/tree_concurrence.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/protocols/tree_concurrence.go -------------------------------------------------------------------------------- /backend/protocols/tree_recovery.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/protocols/tree_recovery.go -------------------------------------------------------------------------------- /backend/server/executor.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/server/executor.go -------------------------------------------------------------------------------- /backend/server/executor_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/server/executor_test.go -------------------------------------------------------------------------------- /backend/server/server.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/server/server.go -------------------------------------------------------------------------------- /backend/sm/entry.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/sm/entry.go -------------------------------------------------------------------------------- /backend/sm/locktable/lock_table.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/sm/locktable/lock_table.go -------------------------------------------------------------------------------- /backend/sm/locktable/lock_table_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/sm/locktable/lock_table_test.go -------------------------------------------------------------------------------- /backend/sm/serializability_manager.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/sm/serializability_manager.go -------------------------------------------------------------------------------- /backend/sm/test/client/client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/sm/test/client/client.go -------------------------------------------------------------------------------- /backend/sm/test/server/create.sh: -------------------------------------------------------------------------------- 1 | go run server.go -create="/tmp/nya" 2 | -------------------------------------------------------------------------------- /backend/sm/test/server/open.sh: -------------------------------------------------------------------------------- 1 | go run server.go -open="/tmp/nya" 2 | -------------------------------------------------------------------------------- /backend/sm/test/server/server.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/sm/test/server/server.go -------------------------------------------------------------------------------- /backend/sm/transaction.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/sm/transaction.go -------------------------------------------------------------------------------- /backend/sm/visibility.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/sm/visibility.go -------------------------------------------------------------------------------- /backend/tbm/field.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/tbm/field.go -------------------------------------------------------------------------------- /backend/tbm/table.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/tbm/table.go -------------------------------------------------------------------------------- /backend/tbm/table_manager.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/tbm/table_manager.go -------------------------------------------------------------------------------- /backend/testInsert.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/testInsert.go -------------------------------------------------------------------------------- /backend/tm/mock_tm.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/tm/mock_tm.go -------------------------------------------------------------------------------- /backend/tm/transaction_manager.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/tm/transaction_manager.go -------------------------------------------------------------------------------- /backend/tm/transaction_manager_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/tm/transaction_manager_test.go -------------------------------------------------------------------------------- /backend/tm/xid.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/tm/xid.go -------------------------------------------------------------------------------- /backend/utils/booter/booter.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/utils/booter/booter.go -------------------------------------------------------------------------------- /backend/utils/booter/booter_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/utils/booter/booter_test.go -------------------------------------------------------------------------------- /backend/utils/cacher/cacher.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/utils/cacher/cacher.go -------------------------------------------------------------------------------- /backend/utils/cacher/cacher_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/utils/cacher/cacher_test.go -------------------------------------------------------------------------------- /backend/utils/cacher/mock_cacher.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/utils/cacher/mock_cacher.go -------------------------------------------------------------------------------- /backend/utils/int_encoding.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/utils/int_encoding.go -------------------------------------------------------------------------------- /backend/utils/int_encoding_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/utils/int_encoding_test.go -------------------------------------------------------------------------------- /backend/utils/str_encoding.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/utils/str_encoding.go -------------------------------------------------------------------------------- /backend/utils/str_encoding_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/utils/str_encoding_test.go -------------------------------------------------------------------------------- /backend/utils/test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/utils/test.go -------------------------------------------------------------------------------- /backend/utils/types.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/backend/utils/types.go -------------------------------------------------------------------------------- /client/client/client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/client/client/client.go -------------------------------------------------------------------------------- /client/client/round_tripper.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/client/client/round_tripper.go -------------------------------------------------------------------------------- /client/client/shell.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/client/client/shell.go -------------------------------------------------------------------------------- /client/launcher.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/client/launcher.go -------------------------------------------------------------------------------- /test/multi_insert/doc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/test/multi_insert/doc.go -------------------------------------------------------------------------------- /test/multi_insert/multi_insert.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/test/multi_insert/multi_insert.go -------------------------------------------------------------------------------- /test/multi_insert/multi_insert_commit.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/test/multi_insert/multi_insert_commit.go -------------------------------------------------------------------------------- /test/multi_insert/start.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/test/multi_insert/start.sh -------------------------------------------------------------------------------- /transporter/doc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/transporter/doc.go -------------------------------------------------------------------------------- /transporter/packager.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/transporter/packager.go -------------------------------------------------------------------------------- /transporter/protocoler.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/transporter/protocoler.go -------------------------------------------------------------------------------- /transporter/transporter.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qw4990/NYADB2/HEAD/transporter/transporter.go --------------------------------------------------------------------------------