MultiTenancy Broken?

Topics: Installing Orchard, Troubleshooting
Apr 10, 2012 at 9:44 AM
Edited Apr 10, 2012 at 9:58 AM

I installed 1.4 to two different shared hosting sites (GoDaddy and HostingFest) where I previously had 1.3.9 installed and working (didn't do an upgrade, started from scratch with the zip file). I noticed that I then had to install, separately, the MultiTenancy module, whereas before, IIRC, it was simply included.

Regardless, I installed the 1.4 version of the MultiTenancy module to both installations, enabled the feature, and am at a complete loss as to how to get it working - in neither do I see any menu item for Tenants like I did with previous versions of Orchard. What gives? Seems like a huge oversight if this is broken, and yet I can't imagine it is. That doesn't explain why it is so non-obvious to me what I would need to do next to get it working, though.

Anyone?

FYI: I downloaded the nupkg file and then uploaded it via the "Install a Module from your computer" link within the Modules area. Everything went smoothly, as far as I can tell - I had success messages telling me it was uploaded and then enabled.

Apr 10, 2012 at 10:42 PM

Wow, no response - lovin' it!

* sigh *

Coordinator
Apr 11, 2012 at 12:10 AM
Edited Apr 11, 2012 at 12:26 AM

Wow, the entitlement. You are really complaining because you didn't get a response in less than 24 hours? Wow indeed.

Multi-tenancy works just fine in 1.4 (I'm running it on several sites myself), as long as you have the right version of the module. Check your logs for exceptions, I'd bet it doesn't even compile because you have a version mismatch.

Apr 11, 2012 at 9:17 PM
bertrandleroy wrote:

Wow, the entitlement. You are really complaining because you didn't get a response in less than 24 hours? Wow indeed.

Multi-tenancy works just fine in 1.4 (I'm running it on several sites myself), as long as you have the right version of the module. Check your logs for exceptions, I'd bet it doesn't even compile because you have a version mismatch.

Wow, the assumptions. You are really complaining because you perceived that I was sincerely complaining and not simply expressing simple disappointment, which is a genuine emotion at not geting a response to a frustrating situation? Honestly, it wasn't about entitlement, I've worked on enough open-source and free projects not to even go near that emotion, I was merely being a dork, hence the "* sigh *" comment at the end there...

Don't worry, I don't expect anything.

That said, I installed versions 1.4 of Orchard, downloaded straight from the site, and the same for the MultiTenancy module. I'll go look for this log file of which you speak...

If it was experiencing this versions mismatch issue, would it still tell me, as it does, that the feature is enabled? Seems like that should be reported to the user, at the least on the module page, the moment it is detected, no? Currently, it displays the module, and I can enable and disable it... It must simply swallow the problem?

Apr 11, 2012 at 9:37 PM

The only log file with any data in it contains the following:

2012-04-09 22:51:58,637 [33] NHibernate.AdoNet.AbstractBatcher - Could not execute query:

SELECT top 2 this_.Id as Id11_0_, this_.SerialNumber as SerialNu2_11_0_ FROM tfcs_Settings_ShellDescriptorRecord this_ WHERE 1=1System.Data.SqlClient.SqlException (0x80131904): Invalid object name 'tfcs_Settings_ShellDescriptorRecord'.   at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)   at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)   at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()   at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)   at System.Data.SqlClient.SqlDataReader.ConsumeMetaData()   at System.Data.SqlClient.SqlDataReader.get_MetaData()   at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)   at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)   at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)   at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)   at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)   at System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior)   at System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader()   at NHibernate.AdoNet.AbstractBatcher.ExecuteReader(IDbCommand cmd)2012-04-09 22:51:58,684 [33] NHibernate.Util.ADOExceptionReporter - Invalid object name 'tfcs_Settings_ShellDescriptorRecord'.2012-04-09 22:51:58,684 [33] NHibernate.Util.ADOExceptionReporter - Invalid object name 'tfcs_Settings_ShellDescriptorRecord'.

I don't suppose this is related, is it?

Coordinator
Apr 12, 2012 at 12:23 AM

It's very likely that it is related, yes. ShellDescriptorRecord settings describe tenants so here it seems like it's unable to build the list of tenants. If that's all you've done so far, I would try to nuke the database and start over. If that happens again, please file a bug with detailed information about your configuration, detailed repro steps, and we'll try to reproduce.

Apr 12, 2012 at 9:50 PM

Okay, thank you for your input - I'll mess with things a bit and see where this goes!

Developer
Apr 13, 2012 at 7:18 AM

Isn't that error the one that's thrown on when installing? I mean there is some database check that queries the database and fails if there is a table missing, but this is expected on setup.