MYDB
MYDB copied to clipboard
一个简单的数据库实现
[INFO] [INFO] --- exec-maven-plugin:3.1.0:java (default-cli) @ MyDB --- [WARNING] java.lang.ClassNotFoundException: "top.guoziyang.mydb.backend.Launcher" at org.codehaus.mojo.exec.URLClassLoaderBuilder$ExecJavaClassLoader.loadClass (URLClassLoaderBuilder.java:198) at java.lang.ClassLoader.loadClass (ClassLoader.java:521) at org.codehaus.mojo.exec.ExecJavaMojo$1.run (ExecJavaMojo.java:271) at java.lang.Thread.run (Thread.java:834)
调用run实际还是单线程顺序执行,需改为Thread.start() 
#19 添加了对此问题的解决方案
增加了全表扫描的功能,不是索引的字段也能进行查询。 增加Where查找不等于的功能
修复了AbstractCache的close方法的bug,循环删除map的 key-value时更加安全 避免出现 java.util.ConcurrentModificationException 异常
begin() 方法会开始一个事务,更具体的,首先设置 xidCounter+1 事务的状态为 committed,随后 xidCounter 自增,并更新文件头。 committed状态应该是active状态吧
增加new-fun分支 重载两个方法,提升服务端内部执行SQL语句速度 增加add—netty分支 实现Netty通信 主分支合并new-fun add—netty 分支 删除两分支
这里没有给freeSpace赋值,导致后面的“将取出的pg重新插入pIndex”的else代码段就会给原来的pi.pgno页插入大小为0的错误大小
修复了原代码中查询结果全是selcet*的情况,现可以根据selcet传入的字段进行相应的展示
从等待队列中选择一个xid来占用uid时,还需将该uid加入xid所持有的uid队列中