Author |
Message |
Registered: March 14, 2007 | Reputation: | Posts: 6,745 |
| Posted: | | | | Seriously: Don't do the following with your production database.
While I was coding my plugins, I just wanted to check something and did the following:
I went to Edit -> Crew, added a Group End divider and moved it into the very first slot.
I got a buch of Access Violations and then DVDP crashed.
Restart and selecting the profile -> Déjà vu all over again.
DB repair couldn't fix this (because technically there's nothing to fix). | | | Karsten DVD Collectors Online
|
|
Registered: May 19, 2007 | Reputation: | Posts: 6,730 |
| Posted: | | | | Wow,
hopefully it wasn't on your productive database.
I wonder if this would explain one or the other unsolved "Access Violation" error. | | | It all seems so stupid, it makes me want to give up! But why should I give up, when it all seems so stupid?
Registrant since 05/22/2003 |
|
Registered: March 14, 2007 | Reputation: | Posts: 6,745 |
| Posted: | | | | Quoting Lewis_Prothero: Quote: hopefully it wasn't on your productive database. No, when I'm coding I'm staying far away from my actual database. | | | Karsten DVD Collectors Online
|
|
Registered: March 18, 2007 | Reputation: | Posts: 2,550 |
| Posted: | | | | Good to know. Thanks DJ | | | Last edited: by The Movieman |
|
Registered: March 14, 2007 | Reputation: | Posts: 6,745 |
| Posted: | | | | I'vet tried to reproduce it at home. And while I do get the access violations, my Profiler doesn't crash.
That's at least something.
If you want to try to reproduce this, make sure you've created a new, empty database, so not to compromise your actual one.
1) Download (8717418032135 - Germany)
2) Edit crew and insert a Group End divider before director John Madden.
3) Save & closse profile | | | Karsten DVD Collectors Online
|
|
Registered: March 13, 2007 | Reputation: | Posts: 2,217 |
| Posted: | | | | Quoting DJ Doena: Quote: Restart and selecting the profile -> Déjà vu all over again. Confirmed. Possible[1] Solution[2]: While restarting, kill the dvdpro.exe task via Taskmanager. On the next start choose "diagnose start-up" and open another database or create a new one. Run DB-repair if necessary, open the shredded database, edit the guilty profile and (re)move the end-divider. cya, Mithi [1] Possible as in: worked for me, might not work on a different database. [2] Solution to a problem that of course shouldn't happen in the first place. | | | Mithi's little XSLT tinkering - the power of XML --- DVD-Profiler Mini-Wiki | | | Last edited: by Mithi |
|
Registered: March 18, 2007 | Reputation: | Posts: 6,463 |
| Posted: | | | | NAS-T indeed.
Other workarounds if DB Repair doesn't work, or if you can't edit the profile (I couldn't when I tried):
Any method of flagging the bad profile can be used, such as BulkEdit Collection/Flags/Flag Between, so long as you do not select the profile itself, then you can Collection/Flagged/Remove From Collection. After that you can reload the profile in any way, such as BulkEdit load from XML, or DVD Add to collection, or Retore the profile from a previous backup, etc.
Perhaps, as someone said, this sheds some light on those mysterious startup problems. If you can figure out which profile is selected by default on startup, the problem is undoubtedly corruption in that particular profile. A startup CMD file might be used to force a different selected profile to recover in those cases. For example Load Flag Set, with only one profile in the list, could be used to select some other profile. | | | Thanks for your support. Free Plugins available here. Advanced plugins available here. Hey, new product!!! BDPFrog. | | | Last edited: by mediadogg |
|
Registered: March 13, 2007 | Reputation: | Posts: 5,494 |
| Posted: | | | | first question: Do we have group end dividers for crew? (as per program 3.7?) | | | In the 60's, People took Acid to make the world Weird. Now the World is weird and People take Prozac to make it Normal.
Terry | | | Last edited: by widescreenforever |
|
Registered: March 14, 2007 | Reputation: | Posts: 6,745 |
| Posted: | | | | Quoting widescreenforever: Quote: first question: Do we have group end dividers for crew? (as per program 3.7?) Yeah, in the regular editor. | | | Karsten DVD Collectors Online
|
|
Registered: March 13, 2007 | Reputation: | Posts: 13,202 |
| Posted: | | | | Might be a stupid question, but why would you put a Group End Divider at the beginning of the crew list? | | | No dictator, no invader can hold an imprisoned population by force of arms forever. There is no greater power in the universe than the need for freedom. Against this power, governments and tyrants and armies cannot stand. The Centauri learned this lesson once. We will teach it to them again. Though it take a thousand years, we will be free. - Citizen G'Kar |
|
Registered: March 18, 2007 | Reputation: | Posts: 6,463 |
| Posted: | | | | Quoting TheMadMartian: Quote: Might be a stupid question, but why would you put a Group End Divider at the beginning of the crew list? You wouldn't, but good programming practice dictates that even unexpected user actions should never cause a crash or loss of data. You either have to: - prevent the user from doing it, or - prevent damage or inconvenience if he does So programmers tend to notice stuff like that. | | | Thanks for your support. Free Plugins available here. Advanced plugins available here. Hey, new product!!! BDPFrog. | | | Last edited: by mediadogg |
|
Registered: March 14, 2007 | Reputation: | Posts: 6,745 |
| Posted: | | | | Quoting TheMadMartian: Quote: Might be a stupid question, but why would you put a Group End Divider at the beginning of the crew list? It was for testing purposes. I wanted to see what the API call returns and it was easier to simply read crew index 0. | | | Karsten DVD Collectors Online
|
|
Registered: March 13, 2007 | Reputation: | Posts: 13,202 |
| Posted: | | | | Thanks guys. It wasn't something I had ever considered doing, under normal operations, so was just curious. Makes sense now. | | | No dictator, no invader can hold an imprisoned population by force of arms forever. There is no greater power in the universe than the need for freedom. Against this power, governments and tyrants and armies cannot stand. The Centauri learned this lesson once. We will teach it to them again. Though it take a thousand years, we will be free. - Citizen G'Kar | | | Last edited: by TheMadMartian |
|
| Blair | Resistance is Futile! |
Registered: October 30, 2008 | Posts: 1,249 |
| Posted: | | | | It's one of the adages for programming/software development: If it ain't broke, try to break it. | | | If at first you don't succeed, skydiving isn't for you.
He who MUST get the last word in on a pointless, endless argument doesn't win. It makes him the bigger jerk. |
|
Registered: March 13, 2007 | Reputation: | Posts: 2,293 |
| Posted: | | | | Quoting Blair: Quote: It's one of the adages for programming/software development: If it ain't broke, try to break it. Yep; also the difference between Verification (it works properly if you do it right) and Validation (it doesn't mess up badly if you do it wrong) | | | It is dangerous to be right in matters where established men are wrong |
|