commit cloud: Add mysql queries

Summary: Same as the sqlite queries but these use "node" instead of "commit". Also, in bookmarks they use "bookmarks" instead of "workspacebookmarks"

Differential Revision: D56637389

fbshipit-source-id: 42a446d2587bf93659932cbf114b92b47d7b2dfe
This commit is contained in:
Luisa Vasquez Gomez 2024-04-29 16:16:34 -07:00 committed by Facebook GitHub Bot
parent 4170dd22a4
commit 93363687ef
4 changed files with 22 additions and 11 deletions

View File

@ -30,17 +30,20 @@ pub struct DeleteArgs {
mononoke_queries! {
read GetHeads(reponame: String, workspace: String) -> (String, Vec<u8>){
"SELECT `reponame`, `commit` FROM `heads` WHERE `reponame`={reponame} AND `workspace`={workspace} ORDER BY `seq`"
mysql("SELECT `reponame`, `node` FROM `heads` WHERE `reponame`={reponame} AND `workspace`={workspace} ORDER BY `seq`")
sqlite("SELECT `reponame`, `commit` FROM `heads` WHERE `reponame`={reponame} AND `workspace`={workspace} ORDER BY `seq`")
}
write DeleteHead(reponame: String, workspace: String, >list commits: Vec<u8>) {
none,
"DELETE FROM `heads` WHERE `reponame`={reponame} AND `workspace`={workspace} AND `commit` IN {commits}"
mysql("DELETE FROM `heads` WHERE `reponame`={reponame} AND `workspace`={workspace} AND `node` IN {commits}")
sqlite("DELETE FROM `heads` WHERE `reponame`={reponame} AND `workspace`={workspace} AND `commit` IN {commits}")
}
write InsertHead(reponame: String, workspace: String, commit: Vec<u8>) {
none,
"INSERT INTO `heads` (`reponame`, `workspace`, `commit`) VALUES ({reponame}, {workspace}, {commit})"
mysql("INSERT INTO `heads` (`reponame`, `workspace`, `node`) VALUES ({reponame}, {workspace}, {commit})")
sqlite("INSERT INTO `heads` (`reponame`, `workspace`, `commit`) VALUES ({reponame}, {workspace}, {commit})")
}
}

View File

@ -33,15 +33,18 @@ pub struct DeleteArgs {
mononoke_queries! {
read GetLocalBookmarks(reponame: String, workspace: String) -> (String, Vec<u8>){
"SELECT `name`, `commit` FROM `workspacebookmarks` WHERE `reponame`={reponame} AND `workspace`={workspace}"
mysql("SELECT `name`, `node` FROM `bookmarks` WHERE `reponame`={reponame} AND `workspace`={workspace}")
sqlite("SELECT `name`, `commit` FROM `workspacebookmarks` WHERE `reponame`={reponame} AND `workspace`={workspace}")
}
write DeleteLocalBookmark(reponame: String, workspace: String, >list removed_bookmarks: Vec<u8>) {
none,
"DELETE FROM `workspacebookmarks` WHERE `reponame`={reponame} AND `workspace`={workspace} AND `commit` IN {removed_bookmarks}"
mysql("DELETE FROM `bookmarks` WHERE `reponame`={reponame} AND `workspace`={workspace} AND `node` IN {removed_bookmarks}")
sqlite("DELETE FROM `workspacebookmarks` WHERE `reponame`={reponame} AND `workspace`={workspace} AND `commit` IN {removed_bookmarks}")
}
write InsertLocalBookmark(reponame: String, workspace: String, name: String, commit: Vec<u8>) {
none,
"INSERT INTO `workspacebookmarks` (`reponame`, `workspace`, `name`, `commit`) VALUES ({reponame}, {workspace}, {name}, {commit})"
mysql("INSERT INTO `bookmarks` (`reponame`, `workspace`, `name`, `node`) VALUES ({reponame}, {workspace}, {name}, {commit})")
sqlite("INSERT INTO `workspacebookmarks` (`reponame`, `workspace`, `name`, `commit`) VALUES ({reponame}, {workspace}, {name}, {commit})")
}
}

View File

@ -31,7 +31,8 @@ pub struct DeleteArgs {
mononoke_queries! {
read GetRemoteBookmarks(reponame: String, workspace: String) -> (String, String, Vec<u8>){
"SELECT `remote`, `name`, `commit` FROM `remotebookmarks` WHERE `reponame`={reponame} AND `workspace`={workspace}"
mysql("SELECT `remote`, `name`, `node` FROM `remotebookmarks` WHERE `reponame`={reponame} AND `workspace`={workspace}")
sqlite("SELECT `remote`, `name`, `commit` FROM `remotebookmarks` WHERE `reponame`={reponame} AND `workspace`={workspace}")
}
//TODO: Handle changesets as bytes (migth require an entirely different query)
write DeleteRemoteBookmark(reponame: String, workspace: String, >list removed_bookmarks: String) {
@ -41,7 +42,8 @@ mononoke_queries! {
}
write InsertRemoteBookmark(reponame: String, workspace: String, remote: String, name: String, commit: Vec<u8>) {
none,
"INSERT INTO `remotebookmarks` (`reponame`, `workspace`, `remote`,`name`, `commit` ) VALUES ({reponame}, {workspace}, {remote}, {name}, {commit})"
mysql("INSERT INTO `remotebookmarks` (`reponame`, `workspace`, `remote`,`name`, `node` ) VALUES ({reponame}, {workspace}, {remote}, {name}, {commit})")
sqlite("INSERT INTO `remotebookmarks` (`reponame`, `workspace`, `remote`,`name`, `commit` ) VALUES ({reponame}, {workspace}, {remote}, {name}, {commit})")
}
}

View File

@ -29,17 +29,20 @@ pub struct DeleteArgs {
mononoke_queries! {
read GetSnapshots(reponame: String, workspace: String) -> (String, Vec<u8>){
"SELECT `reponame`, `commit` FROM snapshots WHERE `reponame`={reponame} AND `workspace`={workspace} ORDER BY `seq`"
mysql("SELECT `reponame`, `node` FROM snapshots WHERE `reponame`={reponame} AND `workspace`={workspace} ORDER BY `seq`")
sqlite("SELECT `reponame`, `commit` FROM snapshots WHERE `reponame`={reponame} AND `workspace`={workspace} ORDER BY `seq`")
}
write DeleteSnapshot(reponame: String, workspace: String, >list commits: Vec<u8>) {
none,
"DELETE FROM `snapshots` WHERE `reponame`={reponame} AND `workspace`={workspace} AND `commit` IN {commits}"
mysql("DELETE FROM `snapshots` WHERE `reponame`={reponame} AND `workspace`={workspace} AND `node` IN {commits}")
sqlite("DELETE FROM `snapshots` WHERE `reponame`={reponame} AND `workspace`={workspace} AND `commit` IN {commits}")
}
write InsertSnapshot(reponame: String, workspace: String, commit: Vec<u8>) {
none,
"INSERT INTO `snapshots` (`reponame`, `workspace`, `commit`) VALUES ({reponame}, {workspace}, {commit})"
mysql("INSERT INTO `snapshots` (`reponame`, `workspace`, `node`) VALUES ({reponame}, {workspace}, {commit})")
sqlite("INSERT INTO `snapshots` (`reponame`, `workspace`, `commit`) VALUES ({reponame}, {workspace}, {commit})")
}
}