Looking at the issue que I think it is OK for me now to take beta11 to my production site.
1.9 is not functioning properly anyway (only sending mail to everybody).
Since i'm not relying on 1.9 at the moment i will uninstall 1.9 and start with a fresh b11 install.
Is that OK or shall i install b11 over 1.9?
thanx
Comments
Comment #1
salvisI have to stay firm and insist that beta versions should not be used on production sites, but between BETA11 and 1.9, BETA11 is definitely the better choice.
1.9 does not have an uninstall function. If you want to have a clean slate, you'd have to manually drop the {subscriptions} and {subscriptions_holding} tables. It should work either way, and for me, getting feedback from people upgrading real sites is definitely more interesting.
In your situation (not needing the old 1.9 data), once you've tried upgrading, you can still uninstall Subscriptions (2.0 does have an uninstall function!) and reinstall from scratch.
P.S. Note that I'm still adding features, so there's new code in every BETA version.
Comment #2
clivesj commentedIndeed, in fact I'm not relying on 1.9 at the moment.
On the corporate website I manage only a small amount of contenttypes (the ones management wants :) ) can be subscriped to. The emails are send-out now by another tools and almost by hand. So for me it's OK to start checking out B11, as long as it doesn't break down other site parts.
I will install it later this week and will also feed back findings.
Comment #3
cozzi commentedI just tried upgrading and this is what I found (and my suggestions)
1) I tried to upgrade by first disabling 5.x.1.9. (this was a mistake and resulted in the db update script not running, eventually leading to an error when attempting to Post a Comment.
I restored from a backup then I deleted the existing 1.9 folder then
1) I installed the 5.x-2.0-beta11
2) I ran update.php, which ran without errors.
3) In the modules section I noticed it still registers as 1.9?
4) I enabled all subscription options.
Now, when I visited any pages that have anything to do with Subscriptions I get the following errors in a pink box:
· user warning: Unknown column 's.stype' in 'field list' query: SELECT td.tid, td.name, n.nid, n.title, s.stype, s.sid FROM ((subscriptions s LEFT JOIN node n ON n.nid = s.sid) LEFT JOIN term_node tn ON tn.nid = s.sid) LEFT JOIN term_data td ON td.tid = tn.tid WHERE n.status = 1 AND s.uid = 1 AND s.stype = 'node' in /home/.grimaldi/thebighop/stage2.mysite.com/includes/database.mysql.inc on line 172.
· user warning: Unknown column 's.stype' in 'field list' query: SELECT u.uid, u.name, s.stype, s.sid FROM (subscriptions s LEFT JOIN users u ON u.uid = s.sid) WHERE u.status = 1 AND s.uid = 1 AND s.stype = 'blog' in /home/.grimaldi/thebighop/stage2.mysite.com/includes/database.mysql.inc on line 172.
· user warning: Unknown column 's.uid' in 'where clause' query: SELECT td.tid, td.name FROM subscriptions s INNER JOIN term_data td ON td.tid = s.sid WHERE s.uid = 1 AND s.stype = 'taxa' in /home/.grimaldi/thebighop/stage2.mysite.com/includes/database.mysql.inc on line 172.
Tell me what you would like for me to do next and I will test again.
(Now I will go search for the "subscribe" for this thread, which is the reason why I was testing this module in the first place. ;-) Hint - I'm hoping this module offers some form of a more "in process" subscription suggestion, but more on that after I get this module running so I can test it first.
Comment #4
salvisThank you for your account!
This sounds like you still have 1.9 in a subdirectory where Drupal can find it.
s.stypehas long been gone — you won't find it anywhere in Subscriptions 2.0.Having to different modules compete for the same namespace results in completely unpredictable behavior, and this is a situation that is beyond our control.
It would be very good to have an additional real-life update test, so restore your database, put 1.9 back on, verify that it works, and then replace it with BETA11. This should work the same whether you disable 1.9 and reenable BETA11 or just replace one with the other. I've never tried the former approach, so I'd be more interested to see how that works out.
Either way, you need to run update.php, of course, but even before you do this, you should see 5.x-2.0-beta11 when you refresh the admin/build/modules page.
Whatever you try, make absolutely sure that you never have more than one version of any module in the directory tree below index.php.
Comment #5
cozzi commentedYou could be right. I renamed the 1.9 folder in case I needed for some reason. I will reinstall my backup and this time delete the 1.9 folder completely - I get nervous installing over it just in case an existing file doesn't get overwritten.
thank you - I'll post my findings soon.
Comment #6
cozzi commentedFirst - I updated again - this time completely deleting the old Subscriptions folder first (not renaming it) and it worked perfectly.
Yes, I did uncheck the 1.9 version in my Module's list first. I then deleted the 1.9 Subscriptions folder, I installed the 2.11 folder, I refreshed the Modules page, (the 2.11 appeared perfectly), I selected all Subscriptions checkboxs, submitted, then ran update.php (no errors) - all seems well.
Now for the WOW! This is a great version! You guys have done a lot!!!!
The feature that I will love most (as I think most users) is the autosubscribe. It's definitely a way to instantly engage your posters. (thank you).
Just in case you get a purist that says they rather the user "elect" to subscribe, then I think you want to make subscriptions more in the poster's face. For an example of this have a look at teamsugar.com - I just got dragged into posting on one their published articles and noticed they've built the Subscription option into the "Post" button process. So, when you post a comment you get two buttons "Post" and "Post & Subscribe". The only place they go wrong is to assume Post also means Post & unSubscribe (I found this when I was posting and all of a sudden my Subscription stopped and I stopped receiving the posts of others. It was a really busy thread and I found this to be very annoying. I had to post "something - anything" just to turn my Subscriptions back on. So, just keep this in mind should you decide to add this button option to round out the other 2 dozen options you've given Subscription.
anyway - good job (and I'll bet it gets even better once I learn more how all the options really function.)
Comment #7
salvisThank you for the update and the praise, I'm glad it worked well now.
You must never ever do that with any module! I keep the original .tar.gz files around for this purpose, or you can move the old directory to some place outside the web server's root directory, but never down, because Drupal will still find it.
Post & Subscribe is a very nice idea! I've been debating off and on whether to put back a Subscribe checkbox, but Post & Subscribe is much nicer. I'll think about it...
Comment #8
salvisComment #9
clivesj commentedI would like to thank salvis, chx and all other drupalers that have worked (and are still working) on Subscriptions2. You guys must have been very busy putting all this together. And the result is a beautiful and flexible module with a very transparant UI. I like it a lot!
Thanks.
I have it working now on my production site as mentioned on #2.
Before installation I disabled S1.9, deleted the S1.9 folder and renamed the S1.9database tables to bak.(I shouldn't have done this :) read later..
Installed S2.0B11 and all went well except that during the update phase there where some SQL errors.
The installation program ( I think upgrade#3) was trying to copy some information from the old tables to the new tables.
Since the old tables where re-named the upgrade prg couldn't find them and the queries failed, generating the errors.
In my case I could just disregard them because i didn't need anything from S1.9
I would suggest check wether the old tables are there (clean install):
IF EXSISTS {subscriptions} RENAME .....
Futher configurations went very well and easy.
New user will be subscribed automatically to 2 specific conttypes. But I wanted to subscripe the current users as well to those two content types.
This was achieved by manually performing a query
"INSERT INTO {subscriptions} (colheader1,colheader2...) SELECT FROM {user} 'node', 'type','content_type_to_autosubscribe',uid,'900','-1','0','0'"
Now also the current population is subscribed to the 2 default content-types
Comment #10
salvisThank you for your praise!
subscriptions_update_3() does exactly what you suggest, renaming the old tables to _old and creating new ones, transferring and converting the old data.
I'm not sure how Subscriptions should handle the approach you took. You've essentially destroyed the 1.9 installation by removing the tables, but you haven't uninstalled 1.9, so 2.0 tried to do an upgrade, which obviously caused some problems. I could try to add
IF EXISTSlogic here and there, and try to muddle through no matter how corrupt the installation is, but does that make sense?What would have been needed to get you to do a straight upgrade, without mucking with your database first?
Comment #11
clivesj commentedI didn't want to install S2B11 over S1.9 since S1.9 was'nt performing well.
As stated in #1 there is no uninstall for S1.9. So if you want a clean install, you have to:
Disable (uncheck) S1.9
Because there is no uninstall, the S1.9 tables have to be re-named or removed.
Just to be sure: it's either S1.9 to S2.0B11 or a clean install by removing the tables by hand?
So my installation simulated a clean install (no S.module installed and no old tables anymore).
I went trough the install script briefly and as I see the calls to RENAME the old files ar already preceded by a check whether the old files excists. So, how come -in my case - the script went ahead and tryd to RENAME the non-excisting tables?
I will read trough the code again and let you know if I find anything.
If you think it's valuable I can do the S2.0B11 over S1.9 upgrade on another low-profile production site.
Comment #12
salvisAh, you're right: one important piece is missing in #1, and you did the best you could with the information you had — I'm sorry about that!
To get a clean installation, you also need to remove the module's row from the system table. That's where the N in hook_update_N() is stored, and as long as that row is still there, Drupal tries to do its enable & upgrade routine.
I've just added this to README.txt:
Will this help? Will it cover all cases? Anything I missed or should be improved/clarified/etc?
Comment #13
clivesj commentedAh, the sytem table, I should have thought about it myself ;)
The proposed text in readme clarifies things well enough
hanks
Comment #14
dalinExcept the help text should read:
"run update.php (directly or from Administer|Modules) as usual."
not upgrade.php
cheers
-dave
Comment #15
salvisAh, thanks!
Comment #16
salvis@cozzi/#6: I liked your idea of a "Post & Subscribe" button, but theme_node_form() in core makes this impossible. Too bad...
Comment #17
Anonymous (not verified) commentedAutomatically closed -- issue fixed for two weeks with no activity.