2014-08-25 10:18:23 +04:00
|
|
|
package server
|
|
|
|
|
2015-03-14 04:10:00 +03:00
|
|
|
// import (
|
|
|
|
// "errors"
|
|
|
|
// )
|
2014-08-25 10:18:23 +04:00
|
|
|
|
2015-03-14 04:10:00 +03:00
|
|
|
// var errTxMiss = errors.New("transaction miss")
|
2014-08-25 10:18:23 +04:00
|
|
|
|
2015-03-14 04:10:00 +03:00
|
|
|
// func beginCommand(c *client) error {
|
|
|
|
// tx, err := c.db.Begin()
|
|
|
|
// if err == nil {
|
|
|
|
// c.tx = tx
|
|
|
|
// c.db = tx.DB
|
|
|
|
// c.resp.writeStatus(OK)
|
|
|
|
// }
|
2014-08-25 10:18:23 +04:00
|
|
|
|
2015-03-14 04:10:00 +03:00
|
|
|
// return err
|
|
|
|
// }
|
2014-08-25 10:18:23 +04:00
|
|
|
|
2015-03-14 04:10:00 +03:00
|
|
|
// func commitCommand(c *client) error {
|
|
|
|
// if c.tx == nil {
|
|
|
|
// return errTxMiss
|
|
|
|
// }
|
2014-08-25 10:18:23 +04:00
|
|
|
|
2015-03-14 04:10:00 +03:00
|
|
|
// err := c.tx.Commit()
|
|
|
|
// c.db, _ = c.ldb.Select(c.tx.Index())
|
|
|
|
// c.tx = nil
|
2014-08-25 10:18:23 +04:00
|
|
|
|
2015-03-14 04:10:00 +03:00
|
|
|
// if err == nil {
|
|
|
|
// c.resp.writeStatus(OK)
|
|
|
|
// }
|
2014-08-25 10:18:23 +04:00
|
|
|
|
2015-03-14 04:10:00 +03:00
|
|
|
// return err
|
|
|
|
// }
|
2014-08-25 10:18:23 +04:00
|
|
|
|
2015-03-14 04:10:00 +03:00
|
|
|
// func rollbackCommand(c *client) error {
|
|
|
|
// if c.tx == nil {
|
|
|
|
// return errTxMiss
|
|
|
|
// }
|
2014-08-25 10:18:23 +04:00
|
|
|
|
2015-03-14 04:10:00 +03:00
|
|
|
// err := c.tx.Rollback()
|
2014-08-25 10:18:23 +04:00
|
|
|
|
2015-03-14 04:10:00 +03:00
|
|
|
// c.db, _ = c.ldb.Select(c.tx.Index())
|
|
|
|
// c.tx = nil
|
2014-08-25 10:18:23 +04:00
|
|
|
|
2015-03-14 04:10:00 +03:00
|
|
|
// if err == nil {
|
|
|
|
// c.resp.writeStatus(OK)
|
|
|
|
// }
|
2014-08-25 10:18:23 +04:00
|
|
|
|
2015-03-14 04:10:00 +03:00
|
|
|
// return err
|
|
|
|
// }
|
2014-08-25 10:18:23 +04:00
|
|
|
|
2015-03-14 04:10:00 +03:00
|
|
|
// func init() {
|
|
|
|
// register("begin", beginCommand)
|
|
|
|
// register("commit", commitCommand)
|
|
|
|
// register("rollback", rollbackCommand)
|
|
|
|
// }
|