Martin, Regarding your closing of the bug report as a feature request, I'm not sure it necessarily has to be that way.
It is only a small subset of T-SQL Commands that are not supported in SQL Azure. The list: http://msdn.microsoft.com/library/azure/ee336250.aspx The elements that are not supported strike me as elements that OTRS would likely not be using (though of course, being new, it would take me a little while to confirm that.) Thanks for the continued discussion & consideration, -- Sean On Thu, Apr 3, 2014 at 11:09 AM, Sean Killeen <seankill...@gmail.com> wrote: > Ah-ha! No sooner did I send that message than I stumbled upon the real > reason: > > Why Do I Need a Clustered > Index?<http://blogs.msdn.com/b/sqlazure/archive/2010/05/12/10011257.aspx>( > http://blogs.msdn.com/b/sqlazure/archive/2010/05/12/10011257.aspx) > > "SQL Azure requires clustered indexes for our replication technology. At > any one time, we are keeping three replicas of data running - one primary > replica and two secondary replicas. We use a quorum based commit scheme > where data is written to the primary and one secondary replica before we > consider the transaction committed." > > > -- > Sean > > > On Thu, Apr 3, 2014 at 11:08 AM, Sean Killeen <seankill...@gmail.com>wrote: > >> Hi Martin, >> >> Thanks for the response. >> >> The best documentation I've been able to find so far: >> http://msdn.microsoft.com/library/azure/ee336275.aspx. "If a table is >> created without a clustered constraint, a clustered index must be created >> before an insert operation is allowed on the table." >> >> It appears that SQL azure will create the tables, but will assume that >> you'll perform additional design on them before inserting data, which is >> why it doesn't throw on create. >> It only throws the error when you attempt to store data in a table >> without a clustered index of any kind. >> >> From a conceptual perspective I agree with you -- I would have never >> thought to put a primary key on tables like those that I listed either; >> they do not seem to require one. >> >> My guess (which is all I have at this point as I research further) is >> that Azure needs a clustered index because it is looking for us to tell it >> how to best store the data, for efficiency reasons. >> >> >> -- >> Sean >> >> >> On Thu, Apr 3, 2014 at 10:13 AM, Martin Gruner <martin.gru...@otrs.com>wrote: >> >>> Hello Sean, >>> >>> thanks a lot for your mail and your willingness to help out here. For >>> now I'd like to ask how it could be that SQL Azure does create the >>> tables but then fails on running INSERT statements. That doesn't seem >>> right to me. Can you provide a link to some documentation on this? >>> >>> These are all tables where we don't need a primary key, that's why they >>> don't have one. >>> >>> Regards, mg >>> >>> Am 29.03.14 02:50, schrieb Sean Killeen: >>> > *Summary: *I'd like to alter some DB scripts to add clustered indexes >>> so >>> > they work better for MSSQL (and work at all for SQL Azure). How should >>> I >>> > go about this? >>> > >>> > Hi all, >>> > >>> > New to contributing to OTRS and to the dev mailing list so please >>> > forgive me if I stumble around a bit. >>> > >>> > *Background / Issue* >>> > >>> > I wanted to set up OTRS on Azure using a SQL Azure database back-end, >>> so >>> > I thought I'd play around a bit. >>> > >>> > SQL Azure apparently chokes when confronted with tables that don't have >>> > any clustered indexes. Womp womp. >>> > >>> > As of v3.3.5, the setup script for OTRS apparently creates 33 tables >>> > without clustered indexes or primary keys (the list in full is at the >>> > end of this post). This leads to inoperability and a ton of errors in >>> > the log when attempting to use OTRS with SQL Azure. >>> > >>> > *What I'd like to do about it * >>> > * >>> > * >>> > I'd like to help out with this and submit a pull request for the MSSQL >>> > setup to deal with this (as well as make things a little more snappy >>> for >>> > MSSQL users). Was hoping to start this out as a Github issue, but I >>> > don't believe Issues are enabled for the otrs/otrs project. >>> > >>> > However, I'm as of yet completely unfamiliar with the data structure, >>> so >>> > I would be guessing at best here and I don't think that's wise. :) >>> > >>> > Is there a solid reference point for the database architecture >>> available >>> > that I could reference to deduce where primary keys or clustered >>> indexes >>> > could be used in the affected tables? Or is there some other approach >>> > the community would prefer I take to addressing this? >>> > >>> > OTRS is a great product, and I'm looking forward to being able to >>> > hopefully give something back. >>> > >>> > Thanks, >>> > -- >>> > Sean >>> > >>> > *Appendix: The list of tables without clustered indexes* >>> > >>> > Found by running: >>> > >>> > SELECT DISTINCT [TABLE] = OBJECT_NAME(OBJECT_ID) >>> > FROM SYS.INDEXES >>> > WHERE INDEX_ID = 0 >>> > AND OBJECTPROPERTY(OBJECT_ID,'IsUserTable') = 1 >>> > ORDER BY [TABLE] >>> > >>> > acl_sync >>> > article_flag >>> > customer_preferences >>> > generic_agent_jobs >>> > gi_object_lock_state >>> > group_customer_user >>> > group_role >>> > group_user >>> > link_relation >>> > notification_event_item >>> > personal_queues >>> > pm_entity >>> > pm_entity_sync >>> > postmaster_filter >>> > process_id >>> > queue_preferences >>> > queue_standard_template >>> > role_user >>> > search_profile >>> > service_customer_user >>> > service_preferences >>> > service_sla >>> > sla_preferences >>> > support_bench_test >>> > ticket_flag >>> > ticket_index >>> > ticket_lock_index >>> > ticket_loop_protection >>> > ticket_watcher >>> > user_preferences >>> > virtual_fs_preferences >>> > web_upload_cache >>> > xml_storage >>> > >>> > >>> > >>> > >>> > _______________________________________________ >>> > OTRS mailing list: dev - Webpage: http://otrs.org/ >>> > Archive: http://lists.otrs.org/pipermail/dev >>> > To unsubscribe: http://lists.otrs.org/cgi-bin/listinfo/dev >>> > >>> >>> -- >>> Martin Gruner >>> Senior Developer R&D >>> >>> OTRS AG >>> Bahnhofplatz 1a >>> 94315 Straubing >>> >>> T: +49 (0)6172 681988 0 >>> F: +49 (0)9421 56818 18 >>> I: www.otrs.com/ >>> >>> Geschäftssitz: Bad Homburg, Amtsgericht: Bad Homburg, HRB 10751, >>> USt-Nr.: DE256610065 >>> Aufsichtsratsvorsitzender: Burchard Steinbild, Vorstand: André >>> Mindermann (Vorsitzender), Christopher Kuhn, Sabine Riedel >>> >>> Einfache Planung, bessere Übersicht - Mit OTRS 3.3 einfach besseres >>> Service Management - Jetzt downloaden und testen >>> _______________________________________________ >>> OTRS mailing list: dev - Webpage: http://otrs.org/ >>> Archive: http://lists.otrs.org/pipermail/dev >>> To unsubscribe: http://lists.otrs.org/cgi-bin/listinfo/dev >>> >> >> >
_______________________________________________ OTRS mailing list: dev - Webpage: http://otrs.org/ Archive: http://lists.otrs.org/pipermail/dev To unsubscribe: http://lists.otrs.org/cgi-bin/listinfo/dev