FederationStateStoreStoreProcs.sql 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688
  1. /**
  2. * Licensed to the Apache Software Foundation (ASF) under one
  3. * or more contributor license agreements. See the NOTICE file
  4. * distributed with this work for additional information
  5. * regarding copyright ownership. The ASF licenses this file
  6. * to you under the Apache License, Version 2.0 (the
  7. * "License"); you may not use this file except in compliance
  8. * with the License. You may obtain a copy of the License at
  9. *
  10. * http://www.apache.org/licenses/LICENSE-2.0
  11. *
  12. * Unless required by applicable law or agreed to in writing, software
  13. * distributed under the License is distributed on an "AS IS" BASIS,
  14. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  15. * See the License for the specific language governing permissions and
  16. * limitations under the License.
  17. */
  18. USE [FederationStateStore]
  19. GO
  20. IF OBJECT_ID ( '[sp_addApplicationHomeSubCluster]', 'P' ) IS NOT NULL
  21. DROP PROCEDURE [sp_addApplicationHomeSubCluster];
  22. GO
  23. CREATE PROCEDURE [dbo].[sp_addApplicationHomeSubCluster]
  24. @applicationId VARCHAR(64),
  25. @homeSubCluster VARCHAR(256),
  26. @storedHomeSubCluster VARCHAR(256) OUTPUT,
  27. @rowCount int OUTPUT
  28. AS BEGIN
  29. DECLARE @errorMessage nvarchar(4000)
  30. BEGIN TRY
  31. BEGIN TRAN
  32. -- If application to sub-cluster map doesn't exist, insert it.
  33. -- Otherwise don't change the current mapping.
  34. IF NOT EXISTS (SELECT TOP 1 *
  35. FROM [dbo].[applicationsHomeSubCluster]
  36. WHERE [applicationId] = @applicationId)
  37. INSERT INTO [dbo].[applicationsHomeSubCluster] (
  38. [applicationId],
  39. [homeSubCluster])
  40. VALUES (
  41. @applicationId,
  42. @homeSubCluster);
  43. -- End of the IF block
  44. SELECT @rowCount = @@ROWCOUNT;
  45. SELECT @storedHomeSubCluster = [homeSubCluster]
  46. FROM [dbo].[applicationsHomeSubCluster]
  47. WHERE [applicationId] = @applicationId;
  48. COMMIT TRAN
  49. END TRY
  50. BEGIN CATCH
  51. ROLLBACK TRAN
  52. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  53. /* raise error and terminate the execution */
  54. RAISERROR(@errorMessage, --- Error Message
  55. 1, -- Severity
  56. -1 -- State
  57. ) WITH log
  58. END CATCH
  59. END;
  60. GO
  61. IF OBJECT_ID ( '[sp_updateApplicationHomeSubCluster]', 'P' ) IS NOT NULL
  62. DROP PROCEDURE [sp_updateApplicationHomeSubCluster];
  63. GO
  64. CREATE PROCEDURE [dbo].[sp_updateApplicationHomeSubCluster]
  65. @applicationId VARCHAR(64),
  66. @homeSubCluster VARCHAR(256),
  67. @rowCount int OUTPUT
  68. AS BEGIN
  69. DECLARE @errorMessage nvarchar(4000)
  70. BEGIN TRY
  71. BEGIN TRAN
  72. UPDATE [dbo].[applicationsHomeSubCluster]
  73. SET [homeSubCluster] = @homeSubCluster
  74. WHERE [applicationId] = @applicationid;
  75. SELECT @rowCount = @@ROWCOUNT;
  76. COMMIT TRAN
  77. END TRY
  78. BEGIN CATCH
  79. ROLLBACK TRAN
  80. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  81. /* raise error and terminate the execution */
  82. RAISERROR(@errorMessage, --- Error Message
  83. 1, -- Severity
  84. -1 -- State
  85. ) WITH log
  86. END CATCH
  87. END;
  88. GO
  89. IF OBJECT_ID ( '[sp_getApplicationsHomeSubCluster]', 'P' ) IS NOT NULL
  90. DROP PROCEDURE [sp_getApplicationsHomeSubCluster];
  91. GO
  92. CREATE PROCEDURE [dbo].[sp_getApplicationsHomeSubCluster]
  93. AS BEGIN
  94. DECLARE @errorMessage nvarchar(4000)
  95. BEGIN TRY
  96. SELECT [applicationId], [homeSubCluster], [createTime]
  97. FROM [dbo].[applicationsHomeSubCluster]
  98. END TRY
  99. BEGIN CATCH
  100. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  101. /* raise error and terminate the execution */
  102. RAISERROR(@errorMessage, --- Error Message
  103. 1, -- Severity
  104. -1 -- State
  105. ) WITH log
  106. END CATCH
  107. END;
  108. GO
  109. IF OBJECT_ID ( '[sp_getApplicationHomeSubCluster]', 'P' ) IS NOT NULL
  110. DROP PROCEDURE [sp_getApplicationHomeSubCluster];
  111. GO
  112. CREATE PROCEDURE [dbo].[sp_getApplicationHomeSubCluster]
  113. @applicationId VARCHAR(64),
  114. @homeSubCluster VARCHAR(256) OUTPUT
  115. AS BEGIN
  116. DECLARE @errorMessage nvarchar(4000)
  117. BEGIN TRY
  118. SELECT @homeSubCluster = [homeSubCluster]
  119. FROM [dbo].[applicationsHomeSubCluster]
  120. WHERE [applicationId] = @applicationid;
  121. END TRY
  122. BEGIN CATCH
  123. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  124. /* raise error and terminate the execution */
  125. RAISERROR(@errorMessage, --- Error Message
  126. 1, -- Severity
  127. -1 -- State
  128. ) WITH log
  129. END CATCH
  130. END;
  131. GO
  132. IF OBJECT_ID ( '[sp_deleteApplicationHomeSubCluster]', 'P' ) IS NOT NULL
  133. DROP PROCEDURE [sp_deleteApplicationHomeSubCluster];
  134. GO
  135. CREATE PROCEDURE [dbo].[sp_deleteApplicationHomeSubCluster]
  136. @applicationId VARCHAR(64),
  137. @rowCount int OUTPUT
  138. AS BEGIN
  139. DECLARE @errorMessage nvarchar(4000)
  140. BEGIN TRY
  141. BEGIN TRAN
  142. DELETE FROM [dbo].[applicationsHomeSubCluster]
  143. WHERE [applicationId] = @applicationId;
  144. SELECT @rowCount = @@ROWCOUNT;
  145. COMMIT TRAN
  146. END TRY
  147. BEGIN CATCH
  148. ROLLBACK TRAN
  149. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  150. /* raise error and terminate the execution */
  151. RAISERROR(@errorMessage, --- Error Message
  152. 1, -- Severity
  153. -1 -- State
  154. ) WITH log
  155. END CATCH
  156. END;
  157. GO
  158. IF OBJECT_ID ( '[sp_registerSubCluster]', 'P' ) IS NOT NULL
  159. DROP PROCEDURE [sp_registerSubCluster];
  160. GO
  161. CREATE PROCEDURE [dbo].[sp_registerSubCluster]
  162. @subClusterId VARCHAR(256),
  163. @amRMServiceAddress VARCHAR(256),
  164. @clientRMServiceAddress VARCHAR(256),
  165. @rmAdminServiceAddress VARCHAR(256),
  166. @rmWebServiceAddress VARCHAR(256),
  167. @state VARCHAR(32),
  168. @lastStartTime BIGINT,
  169. @capability VARCHAR(6000),
  170. @rowCount int OUTPUT
  171. AS BEGIN
  172. DECLARE @errorMessage nvarchar(4000)
  173. BEGIN TRY
  174. BEGIN TRAN
  175. DELETE FROM [dbo].[membership]
  176. WHERE [subClusterId] = @subClusterId;
  177. INSERT INTO [dbo].[membership] (
  178. [subClusterId],
  179. [amRMServiceAddress],
  180. [clientRMServiceAddress],
  181. [rmAdminServiceAddress],
  182. [rmWebServiceAddress],
  183. [lastHeartBeat],
  184. [state],
  185. [lastStartTime],
  186. [capability] )
  187. VALUES (
  188. @subClusterId,
  189. @amRMServiceAddress,
  190. @clientRMServiceAddress,
  191. @rmAdminServiceAddress,
  192. @rmWebServiceAddress,
  193. GETUTCDATE(),
  194. @state,
  195. @lastStartTime,
  196. @capability);
  197. SELECT @rowCount = @@ROWCOUNT;
  198. COMMIT TRAN
  199. END TRY
  200. BEGIN CATCH
  201. ROLLBACK TRAN
  202. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  203. /* raise error and terminate the execution */
  204. RAISERROR(@errorMessage, --- Error Message
  205. 1, -- Severity
  206. -1 -- State
  207. ) WITH log
  208. END CATCH
  209. END;
  210. GO
  211. IF OBJECT_ID ( '[sp_getSubClusters]', 'P' ) IS NOT NULL
  212. DROP PROCEDURE [sp_getSubClusters];
  213. GO
  214. CREATE PROCEDURE [dbo].[sp_getSubClusters]
  215. AS BEGIN
  216. DECLARE @errorMessage nvarchar(4000)
  217. BEGIN TRY
  218. SELECT [subClusterId], [amRMServiceAddress], [clientRMServiceAddress],
  219. [rmAdminServiceAddress], [rmWebServiceAddress], [lastHeartBeat],
  220. [state], [lastStartTime], [capability]
  221. FROM [dbo].[membership]
  222. END TRY
  223. BEGIN CATCH
  224. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  225. /* raise error and terminate the execution */
  226. RAISERROR(@errorMessage, --- Error Message
  227. 1, -- Severity
  228. -1 -- State
  229. ) WITH log
  230. END CATCH
  231. END;
  232. GO
  233. IF OBJECT_ID ( '[sp_getSubCluster]', 'P' ) IS NOT NULL
  234. DROP PROCEDURE [sp_getSubCluster];
  235. GO
  236. CREATE PROCEDURE [dbo].[sp_getSubCluster]
  237. @subClusterId VARCHAR(256),
  238. @amRMServiceAddress VARCHAR(256) OUTPUT,
  239. @clientRMServiceAddress VARCHAR(256) OUTPUT,
  240. @rmAdminServiceAddress VARCHAR(256) OUTPUT,
  241. @rmWebServiceAddress VARCHAR(256) OUTPUT,
  242. @lastHeartbeat DATETIME2 OUTPUT,
  243. @state VARCHAR(256) OUTPUT,
  244. @lastStartTime BIGINT OUTPUT,
  245. @capability VARCHAR(6000) OUTPUT
  246. AS BEGIN
  247. DECLARE @errorMessage nvarchar(4000)
  248. BEGIN TRY
  249. BEGIN TRAN
  250. SELECT @subClusterId = [subClusterId],
  251. @amRMServiceAddress = [amRMServiceAddress],
  252. @clientRMServiceAddress = [clientRMServiceAddress],
  253. @rmAdminServiceAddress = [rmAdminServiceAddress],
  254. @rmWebServiceAddress = [rmWebServiceAddress],
  255. @lastHeartBeat = [lastHeartBeat],
  256. @state = [state],
  257. @lastStartTime = [lastStartTime],
  258. @capability = [capability]
  259. FROM [dbo].[membership]
  260. WHERE [subClusterId] = @subClusterId
  261. COMMIT TRAN
  262. END TRY
  263. BEGIN CATCH
  264. ROLLBACK TRAN
  265. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  266. /* raise error and terminate the execution */
  267. RAISERROR(@errorMessage, --- Error Message
  268. 1, -- Severity
  269. -1 -- State
  270. ) WITH log
  271. END CATCH
  272. END;
  273. GO
  274. IF OBJECT_ID ( '[sp_subClusterHeartbeat]', 'P' ) IS NOT NULL
  275. DROP PROCEDURE [sp_subClusterHeartbeat];
  276. GO
  277. CREATE PROCEDURE [dbo].[sp_subClusterHeartbeat]
  278. @subClusterId VARCHAR(256),
  279. @state VARCHAR(256),
  280. @capability VARCHAR(6000),
  281. @rowCount int OUTPUT
  282. AS BEGIN
  283. DECLARE @errorMessage nvarchar(4000)
  284. BEGIN TRY
  285. BEGIN TRAN
  286. UPDATE [dbo].[membership]
  287. SET [state] = @state,
  288. [lastHeartbeat] = GETUTCDATE(),
  289. [capability] = @capability
  290. WHERE [subClusterId] = @subClusterId;
  291. SELECT @rowCount = @@ROWCOUNT;
  292. COMMIT TRAN
  293. END TRY
  294. BEGIN CATCH
  295. ROLLBACK TRAN
  296. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  297. /* raise error and terminate the execution */
  298. RAISERROR(@errorMessage, --- Error Message
  299. 1, -- Severity
  300. -1 -- State
  301. ) WITH log
  302. END CATCH
  303. END;
  304. GO
  305. IF OBJECT_ID ( '[sp_deregisterSubCluster]', 'P' ) IS NOT NULL
  306. DROP PROCEDURE [sp_deregisterSubCluster];
  307. GO
  308. CREATE PROCEDURE [dbo].[sp_deregisterSubCluster]
  309. @subClusterId VARCHAR(256),
  310. @state VARCHAR(256),
  311. @rowCount int OUTPUT
  312. AS BEGIN
  313. DECLARE @errorMessage nvarchar(4000)
  314. BEGIN TRY
  315. BEGIN TRAN
  316. UPDATE [dbo].[membership]
  317. SET [state] = @state
  318. WHERE [subClusterId] = @subClusterId;
  319. SELECT @rowCount = @@ROWCOUNT;
  320. COMMIT TRAN
  321. END TRY
  322. BEGIN CATCH
  323. ROLLBACK TRAN
  324. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  325. /* raise error and terminate the execution */
  326. RAISERROR(@errorMessage, --- Error Message
  327. 1, -- Severity
  328. -1 -- State
  329. ) WITH log
  330. END CATCH
  331. END;
  332. GO
  333. IF OBJECT_ID ( '[sp_setPolicyConfiguration]', 'P' ) IS NOT NULL
  334. DROP PROCEDURE [sp_setPolicyConfiguration];
  335. GO
  336. CREATE PROCEDURE [dbo].[sp_setPolicyConfiguration]
  337. @queue VARCHAR(256),
  338. @policyType VARCHAR(256),
  339. @params VARBINARY(512),
  340. @rowCount int OUTPUT
  341. AS BEGIN
  342. DECLARE @errorMessage nvarchar(4000)
  343. BEGIN TRY
  344. BEGIN TRAN
  345. DELETE FROM [dbo].[policies]
  346. WHERE [queue] = @queue;
  347. INSERT INTO [dbo].[policies] (
  348. [queue],
  349. [policyType],
  350. [params])
  351. VALUES (
  352. @queue,
  353. @policyType,
  354. @params);
  355. SELECT @rowCount = @@ROWCOUNT;
  356. COMMIT TRAN
  357. END TRY
  358. BEGIN CATCH
  359. ROLLBACK TRAN
  360. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  361. /* raise error and terminate the execution */
  362. RAISERROR(@errorMessage, --- Error Message
  363. 1, -- Severity
  364. -1 -- State
  365. ) WITH log
  366. END CATCH
  367. END;
  368. GO
  369. IF OBJECT_ID ( '[sp_getPolicyConfiguration]', 'P' ) IS NOT NULL
  370. DROP PROCEDURE [sp_getPolicyConfiguration];
  371. GO
  372. CREATE PROCEDURE [dbo].[sp_getPolicyConfiguration]
  373. @queue VARCHAR(256),
  374. @policyType VARCHAR(256) OUTPUT,
  375. @params VARBINARY(6000) OUTPUT
  376. AS BEGIN
  377. DECLARE @errorMessage nvarchar(4000)
  378. BEGIN TRY
  379. SELECT @policyType = [policyType],
  380. @params = [params]
  381. FROM [dbo].[policies]
  382. WHERE [queue] = @queue
  383. END TRY
  384. BEGIN CATCH
  385. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  386. /* raise error and terminate the execution */
  387. RAISERROR(@errorMessage, --- Error Message
  388. 1, -- Severity
  389. -1 -- State
  390. ) WITH log
  391. END CATCH
  392. END;
  393. GO
  394. IF OBJECT_ID ( '[sp_getPoliciesConfigurations]', 'P' ) IS NOT NULL
  395. DROP PROCEDURE [sp_getPoliciesConfigurations];
  396. GO
  397. CREATE PROCEDURE [dbo].[sp_getPoliciesConfigurations]
  398. AS BEGIN
  399. DECLARE @errorMessage nvarchar(4000)
  400. BEGIN TRY
  401. SELECT [queue], [policyType], [params] FROM [dbo].[policies]
  402. END TRY
  403. BEGIN CATCH
  404. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  405. /* raise error and terminate the execution */
  406. RAISERROR(@errorMessage, --- Error Message
  407. 1, -- Severity
  408. -1 -- State
  409. ) WITH log
  410. END CATCH
  411. END;
  412. GO
  413. IF OBJECT_ID ( '[sp_addApplicationHomeSubCluster]', 'P' ) IS NOT NULL
  414. DROP PROCEDURE [sp_addApplicationHomeSubCluster];
  415. GO
  416. CREATE PROCEDURE [dbo].[sp_addReservationHomeSubCluster]
  417. @reservationId VARCHAR(128),
  418. @homeSubCluster VARCHAR(256),
  419. @storedHomeSubCluster VARCHAR(256) OUTPUT,
  420. @rowCount int OUTPUT
  421. AS BEGIN
  422. DECLARE @errorMessage nvarchar(4000)
  423. BEGIN TRY
  424. BEGIN TRAN
  425. -- If application to sub-cluster map doesn't exist, insert it.
  426. -- Otherwise don't change the current mapping.
  427. IF NOT EXISTS (SELECT TOP 1 *
  428. FROM [dbo].[reservationsHomeSubCluster]
  429. WHERE [reservationId] = @reservationId)
  430. INSERT INTO [dbo].[reservationsHomeSubCluster] (
  431. [reservationId],
  432. [homeSubCluster])
  433. VALUES (
  434. @reservationId,
  435. @homeSubCluster);
  436. -- End of the IF block
  437. SELECT @rowCount = @@ROWCOUNT;
  438. SELECT @storedHomeSubCluster = [homeSubCluster]
  439. FROM [dbo].[reservationsHomeSubCluster]
  440. WHERE [reservationId] = @reservationId;
  441. COMMIT TRAN
  442. END TRY
  443. BEGIN CATCH
  444. ROLLBACK TRAN
  445. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  446. /* raise error and terminate the execution */
  447. RAISERROR(@errorMessage, --- Error Message
  448. 1, -- Severity
  449. -1 -- State
  450. ) WITH log
  451. END CATCH
  452. END;
  453. GO
  454. IF OBJECT_ID ( '[sp_updateReservationHomeSubCluster]', 'P' ) IS NOT NULL
  455. DROP PROCEDURE [sp_updateReservationHomeSubCluster];
  456. GO
  457. CREATE PROCEDURE [dbo].[sp_updateReservationHomeSubCluster]
  458. @reservationId VARCHAR(128),
  459. @homeSubCluster VARCHAR(256),
  460. @rowCount int OUTPUT
  461. AS BEGIN
  462. DECLARE @errorMessage nvarchar(4000)
  463. BEGIN TRY
  464. BEGIN TRAN
  465. UPDATE [dbo].[reservationsHomeSubCluster]
  466. SET [homeSubCluster] = @homeSubCluster
  467. WHERE [reservationId] = @reservationId;
  468. SELECT @rowCount = @@ROWCOUNT;
  469. COMMIT TRAN
  470. END TRY
  471. BEGIN CATCH
  472. ROLLBACK TRAN
  473. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  474. /* raise error and terminate the execution */
  475. RAISERROR(@errorMessage, --- Error Message
  476. 1, -- Severity
  477. -1 -- State
  478. ) WITH log
  479. END CATCH
  480. END;
  481. GO
  482. IF OBJECT_ID ( '[sp_getReservationsHomeSubCluster]', 'P' ) IS NOT NULL
  483. DROP PROCEDURE [sp_getReservationsHomeSubCluster];
  484. GO
  485. CREATE PROCEDURE [dbo].[sp_getReservationsHomeSubCluster]
  486. AS BEGIN
  487. DECLARE @errorMessage nvarchar(4000)
  488. BEGIN TRY
  489. SELECT [reservationId], [homeSubCluster], [createTime]
  490. FROM [dbo].[reservationsHomeSubCluster]
  491. END TRY
  492. BEGIN CATCH
  493. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  494. /* raise error and terminate the execution */
  495. RAISERROR(@errorMessage, --- Error Message
  496. 1, -- Severity
  497. -1 -- State
  498. ) WITH log
  499. END CATCH
  500. END;
  501. GO
  502. IF OBJECT_ID ( '[sp_getReservationHomeSubCluster]', 'P' ) IS NOT NULL
  503. DROP PROCEDURE [sp_getReservationHomeSubCluster];
  504. GO
  505. CREATE PROCEDURE [dbo].[sp_getReservationHomeSubCluster]
  506. @reservationId VARCHAR(128),
  507. @homeSubCluster VARCHAR(256) OUTPUT
  508. AS BEGIN
  509. DECLARE @errorMessage nvarchar(4000)
  510. BEGIN TRY
  511. SELECT @homeSubCluster = [homeSubCluster]
  512. FROM [dbo].[reservationsHomeSubCluster]
  513. WHERE [reservationId] = @reservationId;
  514. END TRY
  515. BEGIN CATCH
  516. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  517. /* raise error and terminate the execution */
  518. RAISERROR(@errorMessage, --- Error Message
  519. 1, -- Severity
  520. -1 -- State
  521. ) WITH log
  522. END CATCH
  523. END;
  524. GO
  525. IF OBJECT_ID ( '[sp_deleteReservationHomeSubCluster]', 'P' ) IS NOT NULL
  526. DROP PROCEDURE [sp_deleteReservationHomeSubCluster];
  527. GO
  528. CREATE PROCEDURE [dbo].[sp_deleteReservationHomeSubCluster]
  529. @reservationId VARCHAR(128),
  530. @rowCount int OUTPUT
  531. AS BEGIN
  532. DECLARE @errorMessage nvarchar(4000)
  533. BEGIN TRY
  534. BEGIN TRAN
  535. DELETE FROM [dbo].[reservationsHomeSubCluster]
  536. WHERE [reservationId] = @reservationId;
  537. SELECT @rowCount = @@ROWCOUNT;
  538. COMMIT TRAN
  539. END TRY
  540. BEGIN CATCH
  541. ROLLBACK TRAN
  542. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  543. /* raise error and terminate the execution */
  544. RAISERROR(@errorMessage, --- Error Message
  545. 1, -- Severity
  546. -1 -- State
  547. ) WITH log
  548. END CATCH
  549. END;
  550. GO