FederationStateStoreStoredProcs.sql 27 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042
  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_IN VARCHAR(64),
  25. @homeSubCluster_IN VARCHAR(256),
  26. @storedHomeSubCluster_OUT VARCHAR(256) OUTPUT,
  27. @rowCount_OUT 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_IN)
  37. INSERT INTO [dbo].[applicationsHomeSubCluster] (
  38. [applicationId],
  39. [homeSubCluster])
  40. VALUES (
  41. @applicationId_IN,
  42. @homeSubCluster_IN);
  43. -- End of the IF block
  44. SELECT @rowCount_OUT = @@ROWCOUNT;
  45. SELECT @storedHomeSubCluster_OUT = [homeSubCluster]
  46. FROM [dbo].[applicationsHomeSubCluster]
  47. WHERE [applicationId] = @applicationId_IN;
  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_IN VARCHAR(64),
  66. @homeSubCluster_IN VARCHAR(256),
  67. @rowCount_OUT int OUTPUT
  68. AS BEGIN
  69. DECLARE @errorMessage nvarchar(4000)
  70. BEGIN TRY
  71. BEGIN TRAN
  72. UPDATE [dbo].[applicationsHomeSubCluster]
  73. SET [homeSubCluster] = @homeSubCluster_IN
  74. WHERE [applicationId] = @applicationId_IN;
  75. SELECT @rowCount_OUT = @@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. @limit_IN int,
  94. @homeSubCluster_IN VARCHAR(256)
  95. AS BEGIN
  96. DECLARE @errorMessage nvarchar(4000)
  97. BEGIN TRY
  98. SELECT
  99. [applicationId],
  100. [homeSubCluster],
  101. [createTime]
  102. FROM(SELECT
  103. [applicationId],
  104. [homeSubCluster],
  105. [createTime],
  106. row_number() over(order by [createTime] desc) AS app_rank
  107. FROM [dbo].[applicationsHomeSubCluster]
  108. WHERE [homeSubCluster] = @homeSubCluster_IN OR @homeSubCluster_IN = '') AS applicationsHomeSubCluster
  109. WHERE app_rank <= @limit_IN;
  110. END TRY
  111. BEGIN CATCH
  112. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  113. /* raise error and terminate the execution */
  114. RAISERROR(@errorMessage, --- Error Message
  115. 1, -- Severity
  116. -1 -- State
  117. ) WITH log
  118. END CATCH
  119. END;
  120. GO
  121. IF OBJECT_ID ( '[sp_getApplicationHomeSubCluster]', 'P' ) IS NOT NULL
  122. DROP PROCEDURE [sp_getApplicationHomeSubCluster];
  123. GO
  124. CREATE PROCEDURE [dbo].[sp_getApplicationHomeSubCluster]
  125. @applicationId_IN VARCHAR(64),
  126. @homeSubCluster_OUT VARCHAR(256) OUTPUT
  127. AS BEGIN
  128. DECLARE @errorMessage nvarchar(4000)
  129. BEGIN TRY
  130. SELECT @homeSubCluster_OUT = [homeSubCluster]
  131. FROM [dbo].[applicationsHomeSubCluster]
  132. WHERE [applicationId] = @applicationId_IN;
  133. END TRY
  134. BEGIN CATCH
  135. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  136. /* raise error and terminate the execution */
  137. RAISERROR(@errorMessage, --- Error Message
  138. 1, -- Severity
  139. -1 -- State
  140. ) WITH log
  141. END CATCH
  142. END;
  143. GO
  144. IF OBJECT_ID ( '[sp_deleteApplicationHomeSubCluster]', 'P' ) IS NOT NULL
  145. DROP PROCEDURE [sp_deleteApplicationHomeSubCluster];
  146. GO
  147. CREATE PROCEDURE [dbo].[sp_deleteApplicationHomeSubCluster]
  148. @applicationId_IN VARCHAR(64),
  149. @rowCount_OUT int OUTPUT
  150. AS BEGIN
  151. DECLARE @errorMessage nvarchar(4000)
  152. BEGIN TRY
  153. BEGIN TRAN
  154. DELETE FROM [dbo].[applicationsHomeSubCluster]
  155. WHERE [applicationId] = @applicationId_IN;
  156. SELECT @rowCount_OUT = @@ROWCOUNT;
  157. COMMIT TRAN
  158. END TRY
  159. BEGIN CATCH
  160. ROLLBACK TRAN
  161. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  162. /* raise error and terminate the execution */
  163. RAISERROR(@errorMessage, --- Error Message
  164. 1, -- Severity
  165. -1 -- State
  166. ) WITH log
  167. END CATCH
  168. END;
  169. GO
  170. IF OBJECT_ID ( '[sp_registerSubCluster]', 'P' ) IS NOT NULL
  171. DROP PROCEDURE [sp_registerSubCluster];
  172. GO
  173. CREATE PROCEDURE [dbo].[sp_registerSubCluster]
  174. @subClusterId_IN VARCHAR(256),
  175. @amRMServiceAddress_IN VARCHAR(256),
  176. @clientRMServiceAddress_IN VARCHAR(256),
  177. @rmAdminServiceAddress_IN VARCHAR(256),
  178. @rmWebServiceAddress_IN VARCHAR(256),
  179. @state_IN VARCHAR(32),
  180. @lastStartTime_IN BIGINT,
  181. @capability_IN VARCHAR(6000),
  182. @rowCount_OUT int OUTPUT
  183. AS BEGIN
  184. DECLARE @errorMessage nvarchar(4000)
  185. BEGIN TRY
  186. BEGIN TRAN
  187. DELETE FROM [dbo].[membership]
  188. WHERE [subClusterId] = @subClusterId_IN;
  189. INSERT INTO [dbo].[membership] (
  190. [subClusterId],
  191. [amRMServiceAddress],
  192. [clientRMServiceAddress],
  193. [rmAdminServiceAddress],
  194. [rmWebServiceAddress],
  195. [lastHeartBeat],
  196. [state],
  197. [lastStartTime],
  198. [capability] )
  199. VALUES (
  200. @subClusterId_IN,
  201. @amRMServiceAddress_IN,
  202. @clientRMServiceAddress_IN,
  203. @rmAdminServiceAddress_IN,
  204. @rmWebServiceAddress_IN,
  205. GETUTCDATE(),
  206. @state_IN,
  207. @lastStartTime_IN,
  208. @capability_IN);
  209. SELECT @rowCount_OUT = @@ROWCOUNT;
  210. COMMIT TRAN
  211. END TRY
  212. BEGIN CATCH
  213. ROLLBACK TRAN
  214. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  215. /* raise error and terminate the execution */
  216. RAISERROR(@errorMessage, --- Error Message
  217. 1, -- Severity
  218. -1 -- State
  219. ) WITH log
  220. END CATCH
  221. END;
  222. GO
  223. IF OBJECT_ID ( '[sp_getSubClusters]', 'P' ) IS NOT NULL
  224. DROP PROCEDURE [sp_getSubClusters];
  225. GO
  226. CREATE PROCEDURE [dbo].[sp_getSubClusters]
  227. AS BEGIN
  228. DECLARE @errorMessage nvarchar(4000)
  229. BEGIN TRY
  230. SELECT [subClusterId], [amRMServiceAddress], [clientRMServiceAddress],
  231. [rmAdminServiceAddress], [rmWebServiceAddress], [lastHeartBeat],
  232. [state], [lastStartTime], [capability]
  233. FROM [dbo].[membership]
  234. END TRY
  235. BEGIN CATCH
  236. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  237. /* raise error and terminate the execution */
  238. RAISERROR(@errorMessage, --- Error Message
  239. 1, -- Severity
  240. -1 -- State
  241. ) WITH log
  242. END CATCH
  243. END;
  244. GO
  245. IF OBJECT_ID ( '[sp_getSubCluster]', 'P' ) IS NOT NULL
  246. DROP PROCEDURE [sp_getSubCluster];
  247. GO
  248. CREATE PROCEDURE [dbo].[sp_getSubCluster]
  249. @subClusterId_IN VARCHAR(256),
  250. @amRMServiceAddress_OUT VARCHAR(256) OUTPUT,
  251. @clientRMServiceAddress_OUT VARCHAR(256) OUTPUT,
  252. @rmAdminServiceAddress_OUT VARCHAR(256) OUTPUT,
  253. @rmWebServiceAddress_OUT VARCHAR(256) OUTPUT,
  254. @lastHeartBeat_OUT DATETIME2 OUTPUT,
  255. @state_OUT VARCHAR(256) OUTPUT,
  256. @lastStartTime_OUT BIGINT OUTPUT,
  257. @capability_OUT VARCHAR(6000) OUTPUT
  258. AS BEGIN
  259. DECLARE @errorMessage nvarchar(4000)
  260. BEGIN TRY
  261. BEGIN TRAN
  262. SELECT @subClusterId_IN = [subClusterId],
  263. @amRMServiceAddress_OUT = [amRMServiceAddress],
  264. @clientRMServiceAddress_OUT = [clientRMServiceAddress],
  265. @rmAdminServiceAddress_OUT = [rmAdminServiceAddress],
  266. @rmWebServiceAddress_OUT = [rmWebServiceAddress],
  267. @lastHeartBeat_OUT = [lastHeartBeat],
  268. @state_OUT = [state],
  269. @lastStartTime_OUT = [lastStartTime],
  270. @capability_OUT = [capability]
  271. FROM [dbo].[membership]
  272. WHERE [subClusterId] = @subClusterId_IN
  273. COMMIT TRAN
  274. END TRY
  275. BEGIN CATCH
  276. ROLLBACK TRAN
  277. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  278. /* raise error and terminate the execution */
  279. RAISERROR(@errorMessage, --- Error Message
  280. 1, -- Severity
  281. -1 -- State
  282. ) WITH log
  283. END CATCH
  284. END;
  285. GO
  286. IF OBJECT_ID ( '[sp_subClusterHeartbeat]', 'P' ) IS NOT NULL
  287. DROP PROCEDURE [sp_subClusterHeartbeat];
  288. GO
  289. CREATE PROCEDURE [dbo].[sp_subClusterHeartbeat]
  290. @subClusterId_IN VARCHAR(256),
  291. @state_IN VARCHAR(256),
  292. @capability_IN VARCHAR(6000),
  293. @rowCount_OUT int OUTPUT
  294. AS BEGIN
  295. DECLARE @errorMessage nvarchar(4000)
  296. BEGIN TRY
  297. BEGIN TRAN
  298. UPDATE [dbo].[membership]
  299. SET [state] = @state_IN,
  300. [lastHeartbeat] = GETUTCDATE(),
  301. [capability] = @capability_IN
  302. WHERE [subClusterId] = @subClusterId_IN;
  303. SELECT @rowCount_OUT = @@ROWCOUNT;
  304. COMMIT TRAN
  305. END TRY
  306. BEGIN CATCH
  307. ROLLBACK TRAN
  308. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  309. /* raise error and terminate the execution */
  310. RAISERROR(@errorMessage, --- Error Message
  311. 1, -- Severity
  312. -1 -- State
  313. ) WITH log
  314. END CATCH
  315. END;
  316. GO
  317. IF OBJECT_ID ( '[sp_deregisterSubCluster]', 'P' ) IS NOT NULL
  318. DROP PROCEDURE [sp_deregisterSubCluster];
  319. GO
  320. CREATE PROCEDURE [dbo].[sp_deregisterSubCluster]
  321. @subClusterId_IN VARCHAR(256),
  322. @state_IN VARCHAR(256),
  323. @rowCount_OUT int OUTPUT
  324. AS BEGIN
  325. DECLARE @errorMessage nvarchar(4000)
  326. BEGIN TRY
  327. BEGIN TRAN
  328. UPDATE [dbo].[membership]
  329. SET [state] = @state_IN
  330. WHERE [subClusterId] = @subClusterId_IN;
  331. SELECT @rowCount_OUT = @@ROWCOUNT;
  332. COMMIT TRAN
  333. END TRY
  334. BEGIN CATCH
  335. ROLLBACK TRAN
  336. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  337. /* raise error and terminate the execution */
  338. RAISERROR(@errorMessage, --- Error Message
  339. 1, -- Severity
  340. -1 -- State
  341. ) WITH log
  342. END CATCH
  343. END;
  344. GO
  345. IF OBJECT_ID ( '[sp_setPolicyConfiguration]', 'P' ) IS NOT NULL
  346. DROP PROCEDURE [sp_setPolicyConfiguration];
  347. GO
  348. CREATE PROCEDURE [dbo].[sp_setPolicyConfiguration]
  349. @queue_IN VARCHAR(256),
  350. @policyType_IN VARCHAR(256),
  351. @params_IN VARBINARY(512),
  352. @rowCount_OUT int OUTPUT
  353. AS BEGIN
  354. DECLARE @errorMessage nvarchar(4000)
  355. BEGIN TRY
  356. BEGIN TRAN
  357. DELETE FROM [dbo].[policies]
  358. WHERE [queue] = @queue_IN;
  359. INSERT INTO [dbo].[policies] (
  360. [queue],
  361. [policyType],
  362. [params])
  363. VALUES (
  364. @queue_IN,
  365. @policyType_IN,
  366. @params_IN);
  367. SELECT @rowCount_OUT = @@ROWCOUNT;
  368. COMMIT TRAN
  369. END TRY
  370. BEGIN CATCH
  371. ROLLBACK TRAN
  372. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  373. /* raise error and terminate the execution */
  374. RAISERROR(@errorMessage, --- Error Message
  375. 1, -- Severity
  376. -1 -- State
  377. ) WITH log
  378. END CATCH
  379. END;
  380. GO
  381. IF OBJECT_ID ( '[sp_getPolicyConfiguration]', 'P' ) IS NOT NULL
  382. DROP PROCEDURE [sp_getPolicyConfiguration];
  383. GO
  384. CREATE PROCEDURE [dbo].[sp_getPolicyConfiguration]
  385. @queue_IN VARCHAR(256),
  386. @policyType_OUT VARCHAR(256) OUTPUT,
  387. @params_OUT VARBINARY(6000) OUTPUT
  388. AS BEGIN
  389. DECLARE @errorMessage nvarchar(4000)
  390. BEGIN TRY
  391. SELECT @policyType_OUT = [policyType],
  392. @params_OUT = [params]
  393. FROM [dbo].[policies]
  394. WHERE [queue] = @queue_IN
  395. END TRY
  396. BEGIN CATCH
  397. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  398. /* raise error and terminate the execution */
  399. RAISERROR(@errorMessage, --- Error Message
  400. 1, -- Severity
  401. -1 -- State
  402. ) WITH log
  403. END CATCH
  404. END;
  405. GO
  406. IF OBJECT_ID ( '[sp_getPoliciesConfigurations]', 'P' ) IS NOT NULL
  407. DROP PROCEDURE [sp_getPoliciesConfigurations];
  408. GO
  409. CREATE PROCEDURE [dbo].[sp_getPoliciesConfigurations]
  410. AS BEGIN
  411. DECLARE @errorMessage nvarchar(4000)
  412. BEGIN TRY
  413. SELECT [queue], [policyType], [params] FROM [dbo].[policies]
  414. END TRY
  415. BEGIN CATCH
  416. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  417. /* raise error and terminate the execution */
  418. RAISERROR(@errorMessage, --- Error Message
  419. 1, -- Severity
  420. -1 -- State
  421. ) WITH log
  422. END CATCH
  423. END;
  424. GO
  425. IF OBJECT_ID ( '[sp_addReservationHomeSubCluster]', 'P' ) IS NOT NULL
  426. DROP PROCEDURE [sp_addReservationHomeSubCluster];
  427. GO
  428. CREATE PROCEDURE [dbo].[sp_addReservationHomeSubCluster]
  429. @reservationId_IN VARCHAR(128),
  430. @homeSubCluster_IN VARCHAR(256),
  431. @storedHomeSubCluster_OUT VARCHAR(256) OUTPUT,
  432. @rowCount_OUT int OUTPUT
  433. AS BEGIN
  434. DECLARE @errorMessage nvarchar(4000)
  435. BEGIN TRY
  436. BEGIN TRAN
  437. -- If application to sub-cluster map doesn't exist, insert it.
  438. -- Otherwise don't change the current mapping.
  439. IF NOT EXISTS (SELECT TOP 1 *
  440. FROM [dbo].[reservationsHomeSubCluster]
  441. WHERE [reservationId] = @reservationId_IN)
  442. INSERT INTO [dbo].[reservationsHomeSubCluster] (
  443. [reservationId],
  444. [homeSubCluster])
  445. VALUES (
  446. @reservationId_IN,
  447. @homeSubCluster_IN);
  448. -- End of the IF block
  449. SELECT @rowCount_OUT = @@ROWCOUNT;
  450. SELECT @storedHomeSubCluster_OUT = [homeSubCluster]
  451. FROM [dbo].[reservationsHomeSubCluster]
  452. WHERE [reservationId] = @reservationId_IN;
  453. COMMIT TRAN
  454. END TRY
  455. BEGIN CATCH
  456. ROLLBACK TRAN
  457. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  458. /* raise error and terminate the execution */
  459. RAISERROR(@errorMessage, --- Error Message
  460. 1, -- Severity
  461. -1 -- State
  462. ) WITH log
  463. END CATCH
  464. END;
  465. GO
  466. IF OBJECT_ID ( '[sp_updateReservationHomeSubCluster]', 'P' ) IS NOT NULL
  467. DROP PROCEDURE [sp_updateReservationHomeSubCluster];
  468. GO
  469. CREATE PROCEDURE [dbo].[sp_updateReservationHomeSubCluster]
  470. @reservationId_IN VARCHAR(128),
  471. @homeSubCluster_IN VARCHAR(256),
  472. @rowCount_OUT int OUTPUT
  473. AS BEGIN
  474. DECLARE @errorMessage nvarchar(4000)
  475. BEGIN TRY
  476. BEGIN TRAN
  477. UPDATE [dbo].[reservationsHomeSubCluster]
  478. SET [homeSubCluster] = @homeSubCluster_IN
  479. WHERE [reservationId] = @reservationId_IN;
  480. SELECT @rowCount_OUT = @@ROWCOUNT;
  481. COMMIT TRAN
  482. END TRY
  483. BEGIN CATCH
  484. ROLLBACK TRAN
  485. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  486. /* raise error and terminate the execution */
  487. RAISERROR(@errorMessage, --- Error Message
  488. 1, -- Severity
  489. -1 -- State
  490. ) WITH log
  491. END CATCH
  492. END;
  493. GO
  494. IF OBJECT_ID ( '[sp_getReservationsHomeSubCluster]', 'P' ) IS NOT NULL
  495. DROP PROCEDURE [sp_getReservationsHomeSubCluster];
  496. GO
  497. CREATE PROCEDURE [dbo].[sp_getReservationsHomeSubCluster]
  498. AS BEGIN
  499. DECLARE @errorMessage nvarchar(4000)
  500. BEGIN TRY
  501. SELECT [reservationId], [homeSubCluster], [createTime]
  502. FROM [dbo].[reservationsHomeSubCluster]
  503. END TRY
  504. BEGIN CATCH
  505. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  506. /* raise error and terminate the execution */
  507. RAISERROR(@errorMessage, --- Error Message
  508. 1, -- Severity
  509. -1 -- State
  510. ) WITH log
  511. END CATCH
  512. END;
  513. GO
  514. IF OBJECT_ID ( '[sp_getReservationHomeSubCluster]', 'P' ) IS NOT NULL
  515. DROP PROCEDURE [sp_getReservationHomeSubCluster];
  516. GO
  517. CREATE PROCEDURE [dbo].[sp_getReservationHomeSubCluster]
  518. @reservationId_IN VARCHAR(128),
  519. @homeSubCluster_OUT VARCHAR(256) OUTPUT
  520. AS BEGIN
  521. DECLARE @errorMessage nvarchar(4000)
  522. BEGIN TRY
  523. SELECT @homeSubCluster_OUT = [homeSubCluster]
  524. FROM [dbo].[reservationsHomeSubCluster]
  525. WHERE [reservationId] = @reservationId_IN;
  526. END TRY
  527. BEGIN CATCH
  528. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  529. /* raise error and terminate the execution */
  530. RAISERROR(@errorMessage, --- Error Message
  531. 1, -- Severity
  532. -1 -- State
  533. ) WITH log
  534. END CATCH
  535. END;
  536. GO
  537. IF OBJECT_ID ( '[sp_deleteReservationHomeSubCluster]', 'P' ) IS NOT NULL
  538. DROP PROCEDURE [sp_deleteReservationHomeSubCluster];
  539. GO
  540. CREATE PROCEDURE [dbo].[sp_deleteReservationHomeSubCluster]
  541. @reservationId_IN VARCHAR(128),
  542. @rowCount_OUT int OUTPUT
  543. AS BEGIN
  544. DECLARE @errorMessage nvarchar(4000)
  545. BEGIN TRY
  546. BEGIN TRAN
  547. DELETE FROM [dbo].[reservationsHomeSubCluster]
  548. WHERE [reservationId] = @reservationId_IN;
  549. SELECT @rowCount_OUT = @@ROWCOUNT;
  550. COMMIT TRAN
  551. END TRY
  552. BEGIN CATCH
  553. ROLLBACK TRAN
  554. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  555. /* raise error and terminate the execution */
  556. RAISERROR(@errorMessage, --- Error Message
  557. 1, -- Severity
  558. -1 -- State
  559. ) WITH log
  560. END CATCH
  561. END;
  562. GO
  563. IF OBJECT_ID ( '[sp_addMasterKey]', 'P' ) IS NOT NULL
  564. DROP PROCEDURE [sp_addMasterKey];
  565. GO
  566. CREATE PROCEDURE [dbo].[sp_addMasterKey]
  567. @keyId_IN BIGINT,
  568. @masterKey_IN VARCHAR(1024),
  569. @rowCount_OUT int OUTPUT
  570. AS BEGIN
  571. DECLARE @errorMessage nvarchar(4000)
  572. BEGIN TRY
  573. BEGIN TRAN
  574. -- If application to sub-cluster map doesn't exist, insert it.
  575. -- Otherwise don't change the current mapping.
  576. IF NOT EXISTS (SELECT TOP 1 *
  577. FROM [dbo].[masterKeys]
  578. WHERE [keyId] = @keyId_IN)
  579. INSERT INTO [dbo].[masterKeys] (
  580. [keyId],
  581. [masterKey])
  582. VALUES (
  583. @keyId_IN,
  584. @masterKey_IN);
  585. -- End of the IF block
  586. SELECT @rowCount_OUT = @@ROWCOUNT;
  587. COMMIT TRAN
  588. END TRY
  589. BEGIN CATCH
  590. ROLLBACK TRAN
  591. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  592. /* raise error and terminate the execution */
  593. RAISERROR(@errorMessage, --- Error Message
  594. 1, -- Severity
  595. -1 -- State
  596. ) WITH log
  597. END CATCH
  598. END;
  599. GO
  600. IF OBJECT_ID ( '[sp_getMasterKey]', 'P' ) IS NOT NULL
  601. DROP PROCEDURE [sp_getMasterKey];
  602. GO
  603. CREATE PROCEDURE [dbo].[sp_getMasterKey]
  604. @keyId_IN bigint,
  605. @masterKey_OUT VARCHAR(1024) OUTPUT
  606. AS BEGIN
  607. DECLARE @errorMessage nvarchar(4000)
  608. BEGIN TRY
  609. SELECT @masterKey_OUT = [masterKey]
  610. FROM [dbo].[masterKeys]
  611. WHERE [keyId] = @keyId_IN;
  612. END TRY
  613. BEGIN CATCH
  614. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  615. /* raise error and terminate the execution */
  616. RAISERROR(@errorMessage, --- Error Message
  617. 1, -- Severity
  618. -1 -- State
  619. ) WITH log
  620. END CATCH
  621. END;
  622. GO
  623. IF OBJECT_ID ( '[sp_deleteMasterKey]', 'P' ) IS NOT NULL
  624. DROP PROCEDURE [sp_deleteMasterKey];
  625. GO
  626. CREATE PROCEDURE [dbo].[sp_deleteMasterKey]
  627. @keyId_IN bigint,
  628. @rowCount_OUT int OUTPUT
  629. AS BEGIN
  630. DECLARE @errorMessage nvarchar(4000)
  631. BEGIN TRY
  632. BEGIN TRAN
  633. DELETE FROM [dbo].[masterKeys]
  634. WHERE [keyId] = @keyId_IN;
  635. SELECT @rowCount_OUT = @@ROWCOUNT;
  636. COMMIT TRAN
  637. END TRY
  638. BEGIN CATCH
  639. ROLLBACK TRAN
  640. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  641. /* raise error and terminate the execution */
  642. RAISERROR(@errorMessage, --- Error Message
  643. 1, -- Severity
  644. -1 -- State
  645. ) WITH log
  646. END CATCH
  647. END;
  648. GO
  649. IF OBJECT_ID ( '[sp_addDelegationToken]', 'P' ) IS NOT NULL
  650. DROP PROCEDURE [sp_addDelegationToken];
  651. GO
  652. CREATE PROCEDURE [dbo].[sp_addDelegationToken]
  653. @sequenceNum_IN BIGINT,
  654. @tokenIdent_IN VARCHAR(1024),
  655. @token_IN VARCHAR(1024),
  656. @renewDate_IN BIGINT,
  657. @rowCount_OUT int OUTPUT
  658. AS BEGIN
  659. DECLARE @errorMessage nvarchar(4000)
  660. BEGIN TRY
  661. BEGIN TRAN
  662. -- If application to sub-cluster map doesn't exist, insert it.
  663. -- Otherwise don't change the current mapping.
  664. IF NOT EXISTS (SELECT TOP 1 *
  665. FROM [dbo].[delegationTokens]
  666. WHERE [sequenceNum] = @sequenceNum_IN)
  667. INSERT INTO [dbo].[delegationTokens] (
  668. [sequenceNum],
  669. [tokenIdent],
  670. [token],
  671. [renewDate])
  672. VALUES (
  673. @sequenceNum_IN,
  674. @tokenIdent_IN,
  675. @token_IN,
  676. @renewDate_IN);
  677. -- End of the IF block
  678. SELECT @rowCount_OUT = @@ROWCOUNT;
  679. COMMIT TRAN
  680. END TRY
  681. BEGIN CATCH
  682. ROLLBACK TRAN
  683. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  684. /* raise error and terminate the execution */
  685. RAISERROR(@errorMessage, --- Error Message
  686. 1, -- Severity
  687. -1 -- State
  688. ) WITH log
  689. END CATCH
  690. END;
  691. GO
  692. IF OBJECT_ID ( '[sp_getDelegationToken]', 'P' ) IS NOT NULL
  693. DROP PROCEDURE [sp_getDelegationToken];
  694. GO
  695. CREATE PROCEDURE [dbo].[sp_getDelegationToken]
  696. @sequenceNum_IN BIGINT,
  697. @tokenIdent_OUT VARCHAR(1024) OUTPUT,
  698. @token_OUT VARCHAR(1024) OUTPUT,
  699. @renewDate_OUT BIGINT OUTPUT
  700. AS BEGIN
  701. DECLARE @errorMessage nvarchar(4000)
  702. BEGIN TRY
  703. SELECT @tokenIdent_OUT = [tokenIdent],
  704. @token_OUT = [token],
  705. @renewDate_OUT = [renewDate]
  706. FROM [dbo].[delegationTokens]
  707. WHERE [sequenceNum] = @sequenceNum_IN;
  708. END TRY
  709. BEGIN CATCH
  710. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  711. /* raise error and terminate the execution */
  712. RAISERROR(@errorMessage, --- Error Message
  713. 1, -- Severity
  714. -1 -- State
  715. ) WITH log
  716. END CATCH
  717. END;
  718. GO
  719. IF OBJECT_ID ( '[sp_updateDelegationToken]', 'P' ) IS NOT NULL
  720. DROP PROCEDURE [sp_updateDelegationToken];
  721. GO
  722. CREATE PROCEDURE [dbo].[sp_updateDelegationToken]
  723. @sequenceNum_IN BIGINT,
  724. @tokenIdent_IN VARCHAR(1024),
  725. @token_IN VARCHAR(1024),
  726. @renewDate_IN BIGINT,
  727. @rowCount_OUT BIGINT OUTPUT
  728. AS BEGIN
  729. DECLARE @errorMessage nvarchar(4000)
  730. BEGIN TRY
  731. UPDATE [dbo].[delegationTokens]
  732. SET [tokenIdent] = @tokenIdent_IN,
  733. [token] = @token_IN,
  734. [renewDate] = @renewDate_IN
  735. WHERE [sequenceNum] = @sequenceNum_IN;
  736. SELECT @rowCount_OUT = @@ROWCOUNT;
  737. END TRY
  738. BEGIN CATCH
  739. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  740. /* raise error and terminate the execution */
  741. RAISERROR(@errorMessage, --- Error Message
  742. 1, -- Severity
  743. -1 -- State
  744. ) WITH log
  745. END CATCH
  746. END;
  747. GO
  748. IF OBJECT_ID ( '[sp_deleteDelegationToken]', 'P' ) IS NOT NULL
  749. DROP PROCEDURE [sp_deleteDelegationToken];
  750. GO
  751. CREATE PROCEDURE [dbo].[sp_deleteDelegationToken]
  752. @sequenceNum_IN bigint,
  753. @rowCount_OUT int OUTPUT
  754. AS BEGIN
  755. DECLARE @errorMessage nvarchar(4000)
  756. BEGIN TRY
  757. BEGIN TRAN
  758. DELETE FROM [dbo].[delegationTokens]
  759. WHERE [sequenceNum] = @sequenceNum_IN;
  760. SELECT @rowCount_OUT = @@ROWCOUNT;
  761. COMMIT TRAN
  762. END TRY
  763. BEGIN CATCH
  764. ROLLBACK TRAN
  765. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  766. /* raise error and terminate the execution */
  767. RAISERROR(@errorMessage, --- Error Message
  768. 1, -- Severity
  769. -1 -- State
  770. ) WITH log
  771. END CATCH
  772. END;
  773. GO
  774. IF OBJECT_ID ( '[sp_storeVersion]', 'P' ) IS NOT NULL
  775. DROP PROCEDURE [sp_storeVersion];
  776. GO
  777. CREATE PROCEDURE [dbo].[sp_storeVersion]
  778. @fedVersion_IN VARBINARY(1024),
  779. @versionComment_IN VARCHAR(255),
  780. @rowCount_OUT BIGINT OUTPUT
  781. AS BEGIN
  782. DECLARE @errorMessage nvarchar(4000)
  783. BEGIN TRY
  784. BEGIN TRAN
  785. DELETE FROM [dbo].[versions];
  786. INSERT INTO [dbo].[versions] (
  787. [fedVersion],
  788. [versionComment])
  789. VALUES (
  790. @fedVersion_IN,
  791. @versionComment_IN);
  792. SELECT @rowCount_OUT = @@ROWCOUNT;
  793. COMMIT TRAN
  794. END TRY
  795. BEGIN CATCH
  796. ROLLBACK TRAN
  797. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  798. /* raise error and terminate the execution */
  799. RAISERROR(@errorMessage, --- Error Message
  800. 1, -- Severity
  801. -1 -- State
  802. ) WITH log
  803. END CATCH
  804. END;
  805. GO
  806. IF OBJECT_ID ( '[sp_getVersion]', 'P' ) IS NOT NULL
  807. DROP PROCEDURE [sp_getVersion];
  808. GO
  809. CREATE PROCEDURE [dbo].[sp_getVersion]
  810. @fedVersion_OUT VARCHAR(1024) OUTPUT,
  811. @versionComment_OUT VARCHAR(255) OUTPUT
  812. AS BEGIN
  813. DECLARE @errorMessage nvarchar(4000)
  814. BEGIN TRY
  815. SELECT @fedVersion_OUT = [fedVersion],
  816. @versionComment_OUT = [versionComment]
  817. FROM [dbo].[versions]
  818. LIMIT 1;
  819. END TRY
  820. BEGIN CATCH
  821. SET @errorMessage = dbo.func_FormatErrorMessage(ERROR_MESSAGE(), ERROR_LINE())
  822. /* raise error and terminate the execution */
  823. RAISERROR(@errorMessage, --- Error Message
  824. 1, -- Severity
  825. -1 -- State
  826. ) WITH log
  827. END CATCH
  828. END;
  829. GO