We've released 3.1. We bumped the numbering up because this update includes some database optimizations, a couple of updated/new features, and touched most of the files in one way or the other. The security issue reported in the bug forum has also been address. See the downloads page for the link to the .zip.
To update, just overwrite your files then go to Admin->Archive Maintenance and click "Run Update".
This update includes:
- Some database optimization in the "Run Update" script.
- The addition of "Work In Progress" in the browse sorts.
- A number of bug fixes.
Hi tammy, just ran the uprgrade, and so far so good. When i run version check though i am gettig this:
You are currently running eFiction version 3.1.
The current version of eFiction is 3.0.2
Warning! You are not running the most recent version, please visit efiction.org for further assistance.
http://www.pretendercentre.com/efictestrun/index.php
otherwise, the upgrade seems to be working beautifully so far.
why is nothing ever easy?
url: http://www.pretendercentre.com/missingpieces/
php: 5.2.5 msql: 5.0.45-community
efic version: 3.4.3 latest patches: yes
bridges: none mods: challenges, displayword, beta-search
I always get that when I update too. But its just temporary and all is well.
DON'T HIT KIDS. No. Seriously. They have guns now.
oh, all is good then, just wanted to let you know in case it was a problem.
So far the upgrade has run fantastically well, everything went in easily and it is all working fantastically.
Hooray for Tammy. I am alwasy nervous about upgrades, but this version 3 is just so awesome!!! I am loving it.
why is nothing ever easy?
url: http://www.pretendercentre.com/missingpieces/
php: 5.2.5 msql: 5.0.45-community
efic version: 3.4.3 latest patches: yes
bridges: none mods: challenges, displayword, beta-search
Tammy, why don't you release patches for 3.x versions like you did for 2.x? Because I'm sitting behind a slow dialup connection, it takes much time to overwrite all the files.
When I run the update after uploading the new version's files it tells me that I am still running 3.0 and that the current version is 3.02. I have installed the new files but it doesn't seem as though the updater will let me update.
[url] http://ltaurfanfics.awardspace.com/index.php [url]
After I click update I get:
A fatal MySQL error was encountered.
Query: alter table fanfiction_authorinfo add primary key(uid,field);
Error: (1068) Multiple primary key defined
Steffen - As Tammy said, this update touched most of the files in some way or another. So it's basically the whole thing. The more Tammy tries to only move the files to their own patch, the more likely something will be left out, or the wrong file will be put in... also more likely that we as users will forget to upload all of the new files (I've done that lots of times). The regular download needs all the files too and trying to make sure that both have all the right files complicates things further. Right now the best course of action is to update the whole thing. When there are less bugs, and only a couple of files to upload, she will probably be able to put out patches. Just not now.
Muggle Witch - I got the same problem when I tried to run the update. I apparently have a lot of duplicate items in the profile table of fanfiction_authorinfo. I had information put in double, or triple times and every doubled info stopped the script. If I'm right, and you have the same problem as I did, it should have said where the Multiple primary key was defined. Like (1, 2). 1 should be the id of the user, profile person's number. If you delete all the instances it should work. If you're like me, you may have too many to correct though. I deleted about 15 extras from 5 different users before I gave up and commented out line 33 on admin/update.php
Commenting it out make it skip an optimization for the profile field though, so you may have to wait and see if Tammy will post the code to optimize the table. You should try deleteing all your duplicates in the meantime though. Do a search in that table in phpMyAdmin for all instances that use the username. Organize your results by the different numbers so you can spot doubles better. Delete the doubles.
Whoever said nothing is impossible never tried slamming a revolving door.
url: https://www.potionsandsnitches.org/fanfiction
php: 7.4.33 msql: 5.6.51-community GPL
efic version: 3.5.5 latest patches: yes
bridges: none mods: challenges, tracker, story end, beta, word
Steffen,
Ditto what Jan explained. We'll start putting out patches again soon once the bug reports slow down to a trickle again. I think we're almost there.
MuggleWitch,
Again, ditto what Jan said. You can use phpMyAdmin to remove the duplicates. If you've got a fairly small archive, I'd probably go that route. Or you can edit admin/update.php and remove the word "primary" from line 33. That will let you run the update with the duplicates in place.
*head desk* I am such an idiot...only thing I can think I did was put the table prefix as bah1 (it was blank) I got a warning, created the table, now I am still getting this part of the warning.
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /home/bahprodu/public_html/bahfanfiction/fics/includes/dbfunctions.php on line 31
Please help!
site: http://bahfanfiction.com/fics/
...only thing I can think I did was put the table prefix as bah1 (it was blank)
The original table should have been bah
Muggle Witch,
this is the update thread, so small questions pertaining to the update are okay to post here that other people will most likely have as well (as everyone will be reading this thread), but other questions may be too intensive for this thread.
You should start a new topic using the support template.
https://efiction.org/forums/index.php?topic=4121.0
Right now I have no idea what's going on with your problem, if it's a updated problem, or a bug, I have no idea.
Start a new topic, probably in Version 3.0 Installation and Upgrade Support.
Whoever said nothing is impossible never tried slamming a revolving door.
url: https://www.potionsandsnitches.org/fanfiction
php: 7.4.33 msql: 5.6.51-community GPL
efic version: 3.5.5 latest patches: yes
bridges: none mods: challenges, tracker, story end, beta, word
The following mysql statements run before the update should de-duplicate the table. You'll need to add your table prefix to fanfiction_favorites on the middle 4 lines. WARNING: This deletes data from your database - back it up first!
create temporary table t (uid int, item int, type char(2), id int);
alter table fanfiction_favorites add column id int not null key auto_increment;
insert into t select uid,item,type,min(id) from fanfiction_favorites where id is not null group by uid,item,type having count(*) >1;
delete f from fanfiction_favorites f inner join t on f.uid=t.uid and f.item=t.item and f.type=t.type and f.id>t.id;
alter table fanfiction_favorites drop column id;
drop table t;
Oops - sorry - that script fixes the duplication problem that can occur in the favorites table that Dream Howler had in a different thread which was linked to this one for a solution but is actually a slightly different problem.
The authorinfo table is a bit trickier as the "duplicate" rows may have the same user ID and field names but different field values. There are two versions of the clean script here. This is the safe script - it will only remove rows that are absolute duplicates. Again, you need to put your prefix in front of the table name in the middle 4 lines.
Warning: This script deletes data from your database. Back it up first!
create temporary table t (uid int, field int, info varchar(255), id int);
alter table fanfiction_authorinfo add column id int not null key auto_increment;
insert into t select uid,field,info, min(id) from fanfiction_authorinfo where id is not null group by uid,field,info having count(*) >1;
delete f from fanfiction_authorinfo f inner join t on f.uid=t.uid and f.field=t.field and f.info=t.info and f.id>t.id;
alter table fanfiction_authorinfo drop column id;
drop table t;
After running this the following query will reveal if there remain any duplicate fields with different values:
select uid,field from fanfiction_authorinfo group by uid,field having count(*) >1;
If it does you should look at cleaning them up by hand as the script cant tell which one of the two different values for the field are correct. However, you should be aware that efiction will be retrieving one of these values at random when ever they are queries so the system is unstable while they both exist. If you really don't mind which one is kept, the following script will keep one copy of each field but I'd ask for advice if you don't know what the meaning of the particular field in question is before doing so, and still recommend manual cleanup unless there are too many duplicates to remove.
Warning: This script deletes data from your database. Back it up first!
create temporary table t (uid int, field int, id int);
alter table fanfiction_authorinfo add column id int not null key auto_increment;
insert into t select uid,field,min(id) from fanfiction_authorinfo where id is not null group by uid,field having count(*) >1;
delete f from fanfiction_authorinfo f inner join t on f.uid=t.uid and f.field=t.field and f.id>t.id;
alter table fanfiction_authorinfo drop column id;
drop table t;
Thank you. I was going to write something up, but you saved me the trouble. π