Re: D2W locking error
Re: D2W locking error
- Subject: Re: D2W locking error
- From: "Andrew R. Kinnie" <email@hidden>
- Date: Thu, 02 Dec 2010 15:04:58 -0500
I might try that as well. It's one of the reasons I used Openbase originally, and Scott was always helpful. A similarly simple option now would be ideal. This is not going to be a huge database or get a lot of traffic. Not to mention I work for beer and eats.
On Dec 2, 2010, at 3:01 PM, Chuck Hill wrote:
> Just FYI, if what you are looking for is "free" and "just works", FrontBase is a better choice than MySQL. IMHO. No admin, no dicking around with configurations.
>
> Chuck
>
>
> On Dec 2, 2010, at 11:59 AM, Andrew R. Kinnie wrote:
>
>> Ok, well that all sounds useful and helpful. Though at this point I have done little more than download mysql and sequel pro, then create a datamodel that matched my old openbase structure with som minor improvements (such as using lookup tables)
>>
>> So most of this may as well be Swahili at this point.
>>
>> One dumb question though... Will starting innodb in an existing database cause issues?
>>
>> Sent from my iPhone
>>
>> On Dec 2, 2010, at 1:36 PM, Kieran Kelleher <email@hidden> wrote:
>>
>>> InnoDB is free. It is a transactional database engine. MyISAM is for logging and should not be used for relational databases where data integrity matters.
>>>
>>> It is mandatory for WebObjects EOEditingContext save/transaction-fail/rollback to work.
>>>
>>> If you existing databases and/or table-names have any uppercase in them, convert those first before using the 'lower_case_table_names' option. Also that option is important only if developing on Mac/Win and deploying on Linux
>>>
>>>
>>> Regards, Kieran
>>>
>>> PS. InnoDB can be faster than MyISAM since it caches rows in available memory, whereas MyISAM only caches indexes in memory and must go to disk for rwo data that is not available in the index used for the query.
>>>
>>> PPS. For low-effort high performance, try to ensure your memory allocation to mysql is equal to the size of your dataset, also tell innodb how much memory it can have in the /etc/my.cnf ...... hopefully I can do a session at WOWODC next year, if Pascal approves, entitled "MySQL for WebObjects Engineers" ..... which should hopefully save people having to go learn more than they need to know to find out the bits they need to know. ....... and maybe create a few well-documented boilerplate my.cnf files for common dev-machine and server configs.
>>>
>>>
>>>
>>> On Dec 1, 2010, at 9:39 PM, Pascal Robert wrote:
>>>
>>>> At a minimum, create a file called my.cnf in /etc , and add this text in the file:
>>>>
>>>> [mysqld]
>>>> lower_case_table_names = 1
>>>> default-storage-engine = InnoDB
>>>>
>>>> And restart MySQL. EOF will be more happy. The default table type in MySQL is MyISAM, which is fast but is not transactions safe (and it auto commit).
>>>>
>>>>> OK, so InnoDB appears to be part of the MySQL Community Server. I'll have a look. Thanks.
>>>>>
>>>>>
>>>>> On Dec 1, 2010, at 9:24 PM, Chuck Hill wrote:
>>>>>
>>>>>> It is free. Look in the community edition.
>>>>>>
>>>>>>
>>>>>> On Dec 1, 2010, at 6:24 PM, Andrew R. Kinnie wrote:
>>>>>>
>>>>>>> eesh. I'm not being paid for my time (except in beer and wings) so I don't think I can do a commercial transaction engine. :-/
>>>>>>>
>>>>>>> Is there something else that is effectively free for something this small?
>>>>>>>
>>>>>>> On Dec 1, 2010, at 9:09 PM, Chuck Hill wrote:
>>>>>>>
>>>>>>>>
>>>>>>>> On Dec 1, 2010, at 6:06 PM, Andrew R. Kinnie wrote:
>>>>>>>>
>>>>>>>>> I don't know what InnoDB is, so I'd have to say no.
>>>>>>>>
>>>>>>>> I don't use MySQL. But I do know that MySQL without InnoDB is... not something I would trust data to. Check the Wiki or search for posts on this by Kieran.
>>>>>>>>
>>>>>>>>
>>>>>>>>> I did delete all the bookings and add new ones. No change. :-/
>>>>>>>>>
>>>>>>>>> The bookings for the feature are still not appearing either, even though they are new, but I assume that's a different issue.
>>>>>>>>
>>>>>>>> Could be lack of InnoDB, but more likely something wrong in your app or model.
>>>>>>>>
>>>>>>>>
>>>>>>>> Chuck
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Dec 1, 2010, at 9:01 PM, Chuck Hill wrote:
>>>>>>>>>
>>>>>>>>>> On Dec 1, 2010, at 5:58 PM, Andrew R. Kinnie wrote:
>>>>>>>>>>> On Dec 1, 2010, at 8:42 PM, Chuck Hill wrote:
>>>>>>>>>>> On Dec 1, 2010, at 5:35 PM, Andrew R. Kinnie wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> Hmm. That was checked, but set as false. In any event, I was using an auto-increment. I gather I should remove this? EOF will do the right thing and create it's own pk?
>>>>>>>>>>>>
>>>>>>>>>>>> Yes. Auto-increment does not mix well with data created from EOF.
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>> I changed the debug enabled to true and got this in the console when I tried to delete a duplicate:
>>>>>>>>>>>>
>>>>>>>>>>>>> ...
>>>>>>>>>>>>> SELECT t0.AGENT_ID, t0._rowid, t0.COMIC_ID FROM BOOKING t0 FOR UPDATE
>>>>>>>>>>>>> ...
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> That is a pretty clear sign that EOF is visibly upset. :-) See if removing the auto-increment helps.
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> I already tried that and it didn't help. :-/
>>>>>>>>>>>
>>>>>>>>>>> Of course now the other issue is that the bookings for the feature act are not showing up at all.
>>>>>>>>>>>
>>>>>>>>>>> This is a new site. Am I better off just deleting all the bookings and adding new ones? (there's only about 25 of them)
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> That is worth a try. If you created data with auto-increment and don't have the FK constraints enforced in the database, the relationships might be broken (bad data).
>>>>>>>>>>
>>>>>>>>>> Are you running MySQL with InnoDB?
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Chuck
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> Chuck Hill Senior Consultant / VP Development
>>>>>>>>>>
>>>>>>>>>> Practical WebObjects - for developers who want to increase their overall knowledge of WebObjects or who are trying to solve specific problems.
>>>>>>>>>> http://www.global-village.net/products/practical_webobjects
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Chuck Hill Senior Consultant / VP Development
>>>>>>>>
>>>>>>>> Practical WebObjects - for developers who want to increase their overall knowledge of WebObjects or who are trying to solve specific problems.
>>>>>>>> http://www.global-village.net/products/practical_webobjects
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>> --
>>>>>> Chuck Hill Senior Consultant / VP Development
>>>>>>
>>>>>> Practical WebObjects - for developers who want to increase their overall knowledge of WebObjects or who are trying to solve specific problems.
>>>>>> http://www.global-village.net/products/practical_webobjects
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Do not post admin requests to the list. They will be ignored.
>>>>> Webobjects-dev mailing list (email@hidden)
>>>>> Help/Unsubscribe/Update your Subscription:
>>>>>
>>>>> This email sent to email@hidden
>>>>
>>>> _______________________________________________
>>>> Do not post admin requests to the list. They will be ignored.
>>>> Webobjects-dev mailing list (email@hidden)
>>>> Help/Unsubscribe/Update your Subscription:
>>>>
>>>> This email sent to email@hidden
>>>
>> _______________________________________________
>> Do not post admin requests to the list. They will be ignored.
>> Webobjects-dev mailing list (email@hidden)
>> Help/Unsubscribe/Update your Subscription:
>>
>> This email sent to email@hidden
>
> --
> Chuck Hill Senior Consultant / VP Development
>
> Practical WebObjects - for developers who want to increase their overall knowledge of WebObjects or who are trying to solve specific problems.
> http://www.global-village.net/products/practical_webobjects
>
>
>
>
>
>
>
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden