aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Data/NHibernate/Resources/PostgreSQLDialect
diff options
context:
space:
mode:
authorCharles Krinke2009-01-23 20:21:43 +0000
committerCharles Krinke2009-01-23 20:21:43 +0000
commitbd2c345e56f0857d4d48e8bea509e00954be5d9f (patch)
tree7161fc65dc3b945aa233cf31b680fc6183dd6609 /OpenSim/Data/NHibernate/Resources/PostgreSQLDialect
parent* Extend archive test to check for the presence of a control file in a saved ... (diff)
downloadopensim-SC_OLD-bd2c345e56f0857d4d48e8bea509e00954be5d9f.zip
opensim-SC_OLD-bd2c345e56f0857d4d48e8bea509e00954be5d9f.tar.gz
opensim-SC_OLD-bd2c345e56f0857d4d48e8bea509e00954be5d9f.tar.bz2
opensim-SC_OLD-bd2c345e56f0857d4d48e8bea509e00954be5d9f.tar.xz
Thank you kindly, TLaukkan (Tommil) for a patch that:
* Added Npgsql.dll and Mono.Security.dll which are NpgsqlDriver dlls. * Added missing field to schema creation scripts: PathTaperY. * Added schema creation scripts for PostgreSQL. * Added unit test classes for PostgreSQL. * Added schema creation script folder to NHibernate project in prebuild.xml * Added Npgsql.dll to NHibernate test project dependencies in prebuild.xml * Ensured that build works with both nant and Visual Studio. * Executed build unit tests with nant and NHibernate unit tests with NUnitGUI - Couple of region tests fail due to double precission float rounding errors need to sort out how these are handles in unit tests and if higher precission numeric field needs to be used in Postgresql.
Diffstat (limited to 'OpenSim/Data/NHibernate/Resources/PostgreSQLDialect')
-rw-r--r--OpenSim/Data/NHibernate/Resources/PostgreSQLDialect/001_AssetStore.sql10
-rw-r--r--OpenSim/Data/NHibernate/Resources/PostgreSQLDialect/001_GridStore.sql35
-rw-r--r--OpenSim/Data/NHibernate/Resources/PostgreSQLDialect/001_InventoryStore.sql39
-rw-r--r--OpenSim/Data/NHibernate/Resources/PostgreSQLDialect/001_RegionStore.sql169
-rw-r--r--OpenSim/Data/NHibernate/Resources/PostgreSQLDialect/001_UserStore.sql104
5 files changed, 357 insertions, 0 deletions
diff --git a/OpenSim/Data/NHibernate/Resources/PostgreSQLDialect/001_AssetStore.sql b/OpenSim/Data/NHibernate/Resources/PostgreSQLDialect/001_AssetStore.sql
new file mode 100644
index 0000000..b3e974a
--- /dev/null
+++ b/OpenSim/Data/NHibernate/Resources/PostgreSQLDialect/001_AssetStore.sql
@@ -0,0 +1,10 @@
1CREATE TABLE Assets (
2 ID VARCHAR(36) NOT NULL,
3 Type SMALLINT DEFAULT NULL,
4 Name VARCHAR(64) DEFAULT NULL,
5 Description VARCHAR(64) DEFAULT NULL,
6 Local BOOLEAN DEFAULT NULL,
7 Temporary BOOLEAN DEFAULT NULL,
8 Data BYTEA,
9 PRIMARY KEY (ID)
10);
diff --git a/OpenSim/Data/NHibernate/Resources/PostgreSQLDialect/001_GridStore.sql b/OpenSim/Data/NHibernate/Resources/PostgreSQLDialect/001_GridStore.sql
new file mode 100644
index 0000000..efb889c
--- /dev/null
+++ b/OpenSim/Data/NHibernate/Resources/PostgreSQLDialect/001_GridStore.sql
@@ -0,0 +1,35 @@
1CREATE TABLE Regions (
2 RegionID VARCHAR(36) NOT NULL,
3 OwnerID VARCHAR(36) DEFAULT NULL,
4 OriginID VARCHAR(36) DEFAULT NULL,
5 RegionHandle BIGINT DEFAULT NULL,
6 RegionName VARCHAR(32) DEFAULT NULL,
7 RegionRecvKey VARCHAR(128) DEFAULT NULL,
8 RegionSendKey VARCHAR(128) DEFAULT NULL,
9 RegionSecret VARCHAR(128) DEFAULT NULL,
10 RegionDataURI VARCHAR(255) DEFAULT NULL,
11 ServerIP VARCHAR(64) DEFAULT NULL,
12 ServerPort INT DEFAULT NULL,
13 ServerURI VARCHAR(255) DEFAULT NULL,
14 RegionLocX INT DEFAULT NULL,
15 RegionLocY INT DEFAULT NULL,
16 RegionLocZ INT DEFAULT NULL,
17 EastOverrideHandle BIGINT DEFAULT NULL,
18 WestOverrideHandle BIGINT DEFAULT NULL,
19 SouthOverrideHandle BIGINT DEFAULT NULL,
20 NorthOverrideHandle BIGINT DEFAULT NULL,
21 RegionAssetURI VARCHAR(255) DEFAULT NULL,
22 RegionAssetRecvKey VARCHAR(128) DEFAULT NULL,
23 RegionAssetSendKey VARCHAR(128) DEFAULT NULL,
24 RegionUserURI VARCHAR(255) DEFAULT NULL,
25 RegionUserRecvKey VARCHAR(128) DEFAULT NULL,
26 RegionUserSendKey VARCHAR(128) DEFAULT NULL,
27 RegionMapTextureId VARCHAR(36) DEFAULT NULL,
28 ServerHttpPort INT DEFAULT NULL,
29 ServerRemotingPort INT DEFAULT NULL,
30 PRIMARY KEY (RegionID)
31);
32
33CREATE INDEX RegionNameIndex ON Regions (RegionName);
34CREATE INDEX RegionHandleIndex ON Regions (RegionHandle);
35CREATE INDEX RegionHandlesIndex ON Regions (EastOverrideHandle,WestOverrideHandle,SouthOverrideHandle,NorthOverrideHandle);
diff --git a/OpenSim/Data/NHibernate/Resources/PostgreSQLDialect/001_InventoryStore.sql b/OpenSim/Data/NHibernate/Resources/PostgreSQLDialect/001_InventoryStore.sql
new file mode 100644
index 0000000..767d351
--- /dev/null
+++ b/OpenSim/Data/NHibernate/Resources/PostgreSQLDialect/001_InventoryStore.sql
@@ -0,0 +1,39 @@
1CREATE TABLE InventoryFolders (
2 ID VARCHAR(36) NOT NULL,
3 Type SMALLINT DEFAULT NULL,
4 Version SMALLINT DEFAULT NULL,
5 ParentID VARCHAR(36) DEFAULT NULL,
6 Owner VARCHAR(36) DEFAULT NULL,
7 Name VARCHAR(64) DEFAULT NULL,
8 PRIMARY KEY (ID)
9);
10
11CREATE INDEX InventoryFoldersOwnerIdIndex ON InventoryFolders (Owner);
12CREATE INDEX InventoryFoldersParentIdIndex ON InventoryFolders (ParentID);
13
14CREATE TABLE InventoryItems (
15 ID VARCHAR(36) NOT NULL,
16 InvType SMALLINT DEFAULT NULL,
17 AssetType SMALLINT DEFAULT NULL,
18 AssetID VARCHAR(36) DEFAULT NULL,
19 Folder VARCHAR(36) DEFAULT NULL,
20 Owner VARCHAR(36) DEFAULT NULL,
21 Creator VARCHAR(36) DEFAULT NULL,
22 Name VARCHAR(64) DEFAULT NULL,
23 Description VARCHAR(64) DEFAULT NULL,
24 NextPermissions INT DEFAULT NULL,
25 CurrentPermissions INT DEFAULT NULL,
26 BasePermissions INT DEFAULT NULL,
27 EveryOnePermissions INT DEFAULT NULL,
28 GroupID VARCHAR(36) DEFAULT NULL,
29 GroupOwned BOOLEAN DEFAULT NULL,
30 SalePrice INT DEFAULT NULL,
31 SaleType SMALLINT DEFAULT NULL,
32 Flags INT DEFAULT NULL,
33 CreationDate INT DEFAULT NULL,
34 PRIMARY KEY (ID)
35);
36
37CREATE INDEX InventoryItemsGroupIdIndex ON InventoryItems (GroupID);
38CREATE INDEX InventoryItemsOwnerIdIndex ON InventoryItems (Owner);
39CREATE INDEX InventoryItemsFolderIdIndex ON InventoryItems (Folder);
diff --git a/OpenSim/Data/NHibernate/Resources/PostgreSQLDialect/001_RegionStore.sql b/OpenSim/Data/NHibernate/Resources/PostgreSQLDialect/001_RegionStore.sql
new file mode 100644
index 0000000..42c999b
--- /dev/null
+++ b/OpenSim/Data/NHibernate/Resources/PostgreSQLDialect/001_RegionStore.sql
@@ -0,0 +1,169 @@
1CREATE TABLE Prims (
2 UUID VARCHAR(36) NOT NULL,
3 RegionID VARCHAR(36) DEFAULT NULL,
4 GroupID VARCHAR(36) DEFAULT NULL,
5 ParentID INT DEFAULT NULL,
6 ParentUUID VARCHAR(36) DEFAULT NULL,
7 OwnerID VARCHAR(36) DEFAULT NULL,
8 LastOwnerID VARCHAR(36) DEFAULT NULL,
9 CreatorID VARCHAR(36) DEFAULT NULL,
10 CreationDate INT DEFAULT NULL,
11 LinkNum INT DEFAULT NULL,
12 Name VARCHAR(255) DEFAULT NULL,
13 Text VARCHAR(255) DEFAULT NULL,
14 Description VARCHAR(255) DEFAULT NULL,
15 SitName VARCHAR(255) DEFAULT NULL,
16 TouchName VARCHAR(255) DEFAULT NULL,
17 ObjectFlags INT DEFAULT NULL,
18 OwnerMask INT DEFAULT NULL,
19 NextOwnerMask INT DEFAULT NULL,
20 GroupMask INT DEFAULT NULL,
21 EveryoneMask INT DEFAULT NULL,
22 BaseMask INT DEFAULT NULL,
23 Material SMALLINT DEFAULT NULL,
24 ScriptAccessPin INT DEFAULT NULL,
25 TextureAnimation BYTEA,
26 ParticleSystem BYTEA,
27 ClickAction SMALLINT DEFAULT NULL,
28 Color INT DEFAULT NULL,
29 PositionX DOUBLE PRECISION DEFAULT NULL,
30 PositionY DOUBLE PRECISION DEFAULT NULL,
31 PositionZ DOUBLE PRECISION DEFAULT NULL,
32 GroupPositionX DOUBLE PRECISION DEFAULT NULL,
33 GroupPositionY DOUBLE PRECISION DEFAULT NULL,
34 GroupPositionZ DOUBLE PRECISION DEFAULT NULL,
35 VelocityX DOUBLE PRECISION DEFAULT NULL,
36 VelocityY DOUBLE PRECISION DEFAULT NULL,
37 VelocityZ DOUBLE PRECISION DEFAULT NULL,
38 AngularVelocityX DOUBLE PRECISION DEFAULT NULL,
39 AngularVelocityY DOUBLE PRECISION DEFAULT NULL,
40 AngularVelocityZ DOUBLE PRECISION DEFAULT NULL,
41 AccelerationX DOUBLE PRECISION DEFAULT NULL,
42 AccelerationY DOUBLE PRECISION DEFAULT NULL,
43 AccelerationZ DOUBLE PRECISION DEFAULT NULL,
44 RotationX DOUBLE PRECISION DEFAULT NULL,
45 RotationY DOUBLE PRECISION DEFAULT NULL,
46 RotationZ DOUBLE PRECISION DEFAULT NULL,
47 RotationW DOUBLE PRECISION DEFAULT NULL,
48 SitTargetOffsetX DOUBLE PRECISION DEFAULT NULL,
49 SitTargetOffsetY DOUBLE PRECISION DEFAULT NULL,
50 SitTargetOffsetZ DOUBLE PRECISION DEFAULT NULL,
51 SitTargetOrientW DOUBLE PRECISION DEFAULT NULL,
52 SitTargetOrientX DOUBLE PRECISION DEFAULT NULL,
53 SitTargetOrientY DOUBLE PRECISION DEFAULT NULL,
54 SitTargetOrientZ DOUBLE PRECISION DEFAULT NULL,
55 -- this is the shape
56 Shape INT DEFAULT NULL,
57 ScaleX DOUBLE PRECISION DEFAULT NULL,
58 ScaleY DOUBLE PRECISION DEFAULT NULL,
59 ScaleZ DOUBLE PRECISION DEFAULT NULL,
60 PCode INT DEFAULT NULL,
61 PathBegin SMALLINT DEFAULT NULL,
62 PathEnd SMALLINT DEFAULT NULL,
63 PathScaleX INT DEFAULT NULL,
64 PathScaleY INT DEFAULT NULL,
65 PathShearX INT DEFAULT NULL,
66 PathShearY INT DEFAULT NULL,
67 PathSkew SMALLINT DEFAULT NULL,
68 PathCurve INT DEFAULT NULL,
69 PathRadiusOffset SMALLINT DEFAULT NULL,
70 PathRevolutions INT DEFAULT NULL,
71 PathTaperX SMALLINT DEFAULT NULL,
72 PathTaperY SMALLINT DEFAULT NULL,
73 PathTwist SMALLINT DEFAULT NULL,
74 PathTwistBegin INT DEFAULT NULL,
75 ProfileBegin SMALLINT DEFAULT NULL,
76 ProfileEnd SMALLINT DEFAULT NULL,
77 ProfileCurve INT DEFAULT NULL,
78 ProfileHollow SMALLINT DEFAULT NULL,
79 State INT DEFAULT NULL,
80 Texture BYTEA,
81 ExtraParams BYTEA,
82 PRIMARY KEY (UUID)
83);
84
85CREATE INDEX PrimsRegionIdIndex ON Prims (RegionID);
86CREATE INDEX PrimsRegionParentUuidIndex ON Prims (ParentUUID);
87
88CREATE TABLE Terrain (
89 RegionID VARCHAR(36) not null,
90 MapData BYTEA,
91 PRIMARY KEY (RegionID)
92);
93
94CREATE TABLE PrimItems (
95 ItemID VARCHAR(36) NOT NULL,
96 GroupID VARCHAR(36) DEFAULT NULL,
97 PrimID VARCHAR(36) DEFAULT NULL,
98 ParentFolderID VARCHAR(36) DEFAULT NULL,
99 AssetID VARCHAR(36) DEFAULT NULL,
100 OwnerID VARCHAR(36) DEFAULT NULL,
101 LastOwnerID VARCHAR(36) DEFAULT NULL,
102 CreatorID VARCHAR(36) DEFAULT NULL,
103 CreationDate INT DEFAULT NULL,
104 InvType INT DEFAULT NULL,
105 Name VARCHAR(255) DEFAULT NULL,
106 Description VARCHAR(255) DEFAULT NULL,
107 NextPermissions INT DEFAULT NULL,
108 CurrentPermissions INT DEFAULT NULL,
109 BasePermissions INT DEFAULT NULL,
110 EveryonePermissions INT DEFAULT NULL,
111 GroupPermissions INT DEFAULT NULL,
112 Flags INT DEFAULT NULL,
113 PRIMARY KEY (ItemID)
114);
115
116CREATE INDEX PrimItemsPrimIdIndex ON PrimItems (PrimID);
117
118CREATE TABLE RegionSettings (
119 RegionID VARCHAR(36) NOT NULL,
120
121 BlockTerraform BOOLEAN DEFAULT NULL,
122 BlockFly BOOLEAN DEFAULT NULL,
123 AllowDamage BOOLEAN DEFAULT NULL,
124 RestrictPushing BOOLEAN DEFAULT NULL,
125 AllowLandResell BOOLEAN DEFAULT NULL,
126 AllowLandJoinDivide BOOLEAN DEFAULT NULL,
127 BlockShowInSearch BOOLEAN DEFAULT NULL,
128
129 AgentLimit INT DEFAULT NULL,
130 ObjectBonus DOUBLE PRECISION DEFAULT NULL,
131 Maturity INT DEFAULT NULL,
132
133 DisableScripts BOOLEAN DEFAULT NULL,
134 DisableCollisions BOOLEAN DEFAULT NULL,
135 DisablePhysics BOOLEAN DEFAULT NULL,
136
137 TerrainTexture1 VARCHAR(36) DEFAULT NULL,
138 TerrainTexture2 VARCHAR(36) DEFAULT NULL,
139 TerrainTexture3 VARCHAR(36) DEFAULT NULL,
140 TerrainTexture4 VARCHAR(36) DEFAULT NULL,
141
142 Elevation1NW DOUBLE PRECISION DEFAULT NULL,
143 Elevation2NW DOUBLE PRECISION DEFAULT NULL,
144 Elevation1NE DOUBLE PRECISION DEFAULT NULL,
145 Elevation2NE DOUBLE PRECISION DEFAULT NULL,
146 Elevation1SE DOUBLE PRECISION DEFAULT NULL,
147 Elevation2SE DOUBLE PRECISION DEFAULT NULL,
148 Elevation1SW DOUBLE PRECISION DEFAULT NULL,
149 Elevation2SW DOUBLE PRECISION DEFAULT NULL,
150
151 WaterHeight DOUBLE PRECISION DEFAULT NULL,
152 TerrainRaiseLimit DOUBLE PRECISION DEFAULT NULL,
153 TerrainLowerLimit DOUBLE PRECISION DEFAULT NULL,
154
155 UseEstateSun BOOLEAN DEFAULT NULL,
156 Sandbox BOOLEAN DEFAULT NULL,
157
158 SunVectorX DOUBLE PRECISION DEFAULT NULL,
159 SunVectorY DOUBLE PRECISION DEFAULT NULL,
160 SunVectorZ DOUBLE PRECISION DEFAULT NULL,
161
162 FixedSun BOOLEAN DEFAULT NULL,
163 SunPosition DOUBLE PRECISION DEFAULT NULL,
164
165 Covenant VARCHAR(36) DEFAULT NULL,
166
167 PRIMARY KEY (RegionID)
168);
169
diff --git a/OpenSim/Data/NHibernate/Resources/PostgreSQLDialect/001_UserStore.sql b/OpenSim/Data/NHibernate/Resources/PostgreSQLDialect/001_UserStore.sql
new file mode 100644
index 0000000..437b2a9
--- /dev/null
+++ b/OpenSim/Data/NHibernate/Resources/PostgreSQLDialect/001_UserStore.sql
@@ -0,0 +1,104 @@
1CREATE TABLE UserAgents (
2 ProfileID VARCHAR(36) NOT NULL,
3 AgentIP VARCHAR(24) DEFAULT NULL,
4 AgentPort INT DEFAULT NULL,
5 AgentOnline BOOLEAN DEFAULT NULL,
6 SessionID VARCHAR(36) DEFAULT NULL,
7 SecureSessionID VARCHAR(36) DEFAULT NULL,
8 InitialRegion VARCHAR(255) DEFAULT NULL,
9 Region VARCHAR(255) DEFAULT NULL,
10 LoginTime INT DEFAULT NULL,
11 LogoutTime INT DEFAULT NULL,
12 Handle BIGINT DEFAULT NULL,
13 PositionX DOUBLE PRECISION DEFAULT NULL,
14 PositionY DOUBLE PRECISION DEFAULT NULL,
15 PositionZ DOUBLE PRECISION DEFAULT NULL,
16 LookAtX DOUBLE PRECISION DEFAULT NULL,
17 LookAtY DOUBLE PRECISION DEFAULT NULL,
18 LookAtZ DOUBLE PRECISION DEFAULT NULL,
19 PRIMARY KEY (ProfileID)
20);
21
22CREATE TABLE UserProfiles (
23 ID VARCHAR(36) NOT NULL,
24 WebLoginKey VARCHAR(36) DEFAULT NULL,
25 FirstName VARCHAR(32) DEFAULT NULL,
26 SurName VARCHAR(32) DEFAULT NULL,
27 Email VARCHAR(250) DEFAULT NULL,
28 PasswordHash VARCHAR(32) DEFAULT NULL,
29 PasswordSalt VARCHAR(32) DEFAULT NULL,
30 HomeRegionID VARCHAR(36) DEFAULT NULL,
31 HomeRegionX INT DEFAULT NULL,
32 HomeRegionY INT DEFAULT NULL,
33 HomeLocationX DOUBLE PRECISION DEFAULT NULL,
34 HomeLocationY DOUBLE PRECISION DEFAULT NULL,
35 HomeLocationZ DOUBLE PRECISION DEFAULT NULL,
36 HomeLookAtX DOUBLE PRECISION DEFAULT NULL,
37 HomeLookAtY DOUBLE PRECISION DEFAULT NULL,
38 HomeLookAtZ DOUBLE PRECISION DEFAULT NULL,
39 Created INT DEFAULT NULL,
40 LastLogin INT DEFAULT NULL,
41 UserInventoryURI VARCHAR(255) DEFAULT NULL,
42 UserAssetURI VARCHAR(255) DEFAULT NULL,
43 Image VARCHAR(36) DEFAULT NULL,
44 FirstLifeImage VARCHAR(36) DEFAULT NULL,
45 AboutText TEXT DEFAULT NULL,
46 FirstLifeAboutText TEXT DEFAULT NULL,
47 CanDoMask INT DEFAULT NULL,
48 WantDoMask INT DEFAULT NULL,
49 UserFlags INT DEFAULT NULL,
50 GodLevel INT DEFAULT NULL,
51 CustomType VARCHAR(32) DEFAULT NULL,
52 Partner VARCHAR(36) DEFAULT NULL,
53 RootInventoryFolderID VARCHAR(36) DEFAULT NULL,
54 PRIMARY KEY (ID)
55);
56
57CREATE INDEX UserSurnameIndex ON UserProfiles (SurName);
58CREATE INDEX UserFirstNameIndex ON UserProfiles (FirstName);
59CREATE UNIQUE INDEX UserFullNameIndex ON UserProfiles (SurName,FirstName);
60
61CREATE TABLE UserAppearances (
62 Owner VARCHAR(36) NOT NULL,
63 BodyItem VARCHAR(36) DEFAULT NULL,
64 BodyAsset VARCHAR(36) DEFAULT NULL,
65 SkinItem VARCHAR(36) DEFAULT NULL,
66 SkinAsset VARCHAR(36) DEFAULT NULL,
67 HairItem VARCHAR(36) DEFAULT NULL,
68 HairAsset VARCHAR(36) DEFAULT NULL,
69 EyesItem VARCHAR(36) DEFAULT NULL,
70 EyesAsset VARCHAR(36) DEFAULT NULL,
71 ShirtItem VARCHAR(36) DEFAULT NULL,
72 ShirtAsset VARCHAR(36) DEFAULT NULL,
73 PantsItem VARCHAR(36) DEFAULT NULL,
74 PantsAsset VARCHAR(36) DEFAULT NULL,
75 ShoesItem VARCHAR(36) DEFAULT NULL,
76 ShoesAsset VARCHAR(36) DEFAULT NULL,
77 SocksItem VARCHAR(36) DEFAULT NULL,
78 SocksAsset VARCHAR(36) DEFAULT NULL,
79 JacketItem VARCHAR(36) DEFAULT NULL,
80 JacketAsset VARCHAR(36) DEFAULT NULL,
81 GlovesItem VARCHAR(36) DEFAULT NULL,
82 GlovesAsset VARCHAR(36) DEFAULT NULL,
83 UnderShirtItem VARCHAR(36) DEFAULT NULL,
84 UnderShirtAsset VARCHAR(36) DEFAULT NULL,
85 UnderPantsItem VARCHAR(36) DEFAULT NULL,
86 UnderPantsAsset VARCHAR(36) DEFAULT NULL,
87 SkirtItem VARCHAR(36) DEFAULT NULL,
88 SkirtAsset VARCHAR(36) DEFAULT NULL,
89 Texture BYTEA,
90 VisualParams BYTEA,
91 Serial INT DEFAULT NULL,
92 AvatarHeight FLOAT DEFAULT NULL,
93 PRIMARY KEY (Owner)
94);
95
96CREATE TABLE UserFriends (
97 UserFriendID VARCHAR(36) NOT NULL,
98 OwnerID VARCHAR(36) DEFAULT NULL,
99 FriendID VARCHAR(36) DEFAULT NULL,
100 FriendPermissions INT DEFAULT NULL,
101 PRIMARY KEY (UserFriendID)
102);
103
104CREATE UNIQUE INDEX UserFriendsOwnerIdFriendIdIndex ON UserFriends (OwnerID,FriendID);