worldpossible / rachelplus

RACHEL Configuration on Intel CAP
18 stars 8 forks source link

Large KA Lite database fills eMMC #69

Closed spatiald closed 7 years ago

spatiald commented 7 years ago

From Leon: "We bought a brand new RACHEL Plus with latest KA-Lite 0.16.9 version, and I have “Cloned” the 500G Hard drive for use in updating to our older RACHELs. But now I’ve run into a new problem when trying to run method 2. Using the USB Recovery tool 1.2.16 v9a on the CAP seems to lock up on some of the older RACHEL Plus. It boots and blinks fast for 8s, then the comes on steady and stays that way (for over an hour) until I forced shutdown. Is there a firmware or hardware issue with RACHELs we purchased 18 months ago? And where to you keep the repository of latest USB Recovery, since I don’t think the v9a is set up for KA-Lite 0.16.9?"

spatiald commented 7 years ago

I am working on a possible fix...I would think we could create a custom USB that would save off the database and users, move it to the hard disk, and then re-setup KA without "damaging" the current setup.

spatiald commented 7 years ago

Start with choosing 1 of 2 options for you.

  1. (RECOMMENDED) Download the updated file "update.sh" from here. Replace the "update.sh" file on the root of a RACHEL Recovery USB. It is already configured and ready to go by default.
  2. Download the USB image I uploaded here and burn it to a USB. It has the modified update.sh script setup and is ready to go.

After setting up the USB, following these remaining instructions.

Turn off the CAP that is having issues.

Insert the USB into the CAP that is have the KALite database issue.

Turn on the CAP and the process will take about a min. After the process completes, the CAP will shutdown.

Remove the USB, turn on the CAP, and it should boot normally with the KA Lite database now running from the hard drive (specifically, it will run from /media/RACHEL/.kalite).

spatiald commented 7 years ago

@needlestack @j-schwartz Should we incorporate a fix to all CAPs that moves the database or just to future ones. With large user populations using KA Lite, I believe this will be an issue.

needlestack commented 7 years ago

I think we should fix all we can, but there's probably not that many in the field that we'll be able to get to. The good news is that in practice, I think most people use the system as a guest, so hopefully it won't be a common problem. We'll certainly fix it whenever it comes up.

So what is the actual fix - do we install kalite on the /media partition? If go with option #1 above will that let me build a new RACHEL-Plus with the fix in place?

spatiald commented 7 years ago

The fix for new devices is that KA Lite is installed as we normally do, then move the database to /media/RACHEL/.kalite, and then symlink the original spot. We maintain location consistency going forward; which leads to easier troubleshooting. Unless others think differently...open to other ideas.

needlestack commented 7 years ago

That sounds perfect.

needlestack commented 7 years ago

Actually - just noticed /root/.kalite/server.log -- I don't know how fast that grows, but I've gone ahead and modified buildRACHEL() in cap-rachel-configure.sh to move both the database file and that server.log. I'm testing a build now, and I will check in the changes later today assuming it works.

spatiald commented 7 years ago

Not sure what you mean. The new method is to move the whole folder /root/.kalite to /media/RACHEL/.kalite and to add a symlink from /root/.kalite to /media/RACHEL/.kalite

spatiald commented 7 years ago

Since the new USB will already have the folder moved and the symlink in place, we shouldn't need to add anything to buildRACHEL()

Maybe I am not understanding...?

needlestack commented 7 years ago

Nope, totally me that's not understanding. When you said "move the database" I thought you moved just the db file, but I get you now. Moving the whole directory makes much more sense :) I will not check in those changes I just made.

So the only difference on RACHEL_Recovery_USB_1-2-16_Move-KALite-DB_20161111 is the update.sh file, correct?

spatiald commented 7 years ago

Correct on the USB.

The edition was built to provide an option for Leon in fixing his broke CAP.

I will delete the build once he works that issue out.

Also, I am starting to migrate to the new build version scheme. You'll see that start to pop up.

And I am starting to roll out milestones using the same thought process.

L-Amstutz commented 7 years ago

The email snippet pasted at beginning of this thread was relating to a different problem that was solved by using a different/reformatted USB flash drive. The main problem was that when we began using the student tracking and reporting feature in KA-Lite 0.16.8, a large school soon experienced a "crash" of the RACHEL with a message stating that there was no room on the drive. After a couple times rebooting, the RACHEL seems to have lost WiFi completely, preventing our Liberian tech from even accessing it, in spite of trying several other methods. So I am preparing to send a replacement RACHEL plus but am updating it to the new HDD partition scheme and copying content from the RACHEL plus we just bought a month ago. But we need to apply a correction to avoid filling the eMMC, and also to address an issue apparently caused by the configuration of the Recovery_USB program. Issue 1 Summary I used the Recovery_USB_1-2-16_v9a file to update the eMMC, then cloned the HDD from a new RACHEL. But I am getting a language error when attempting to go to KA-Lite topics. When clicking on a KA-Lite topic from the main menu 192.168.88.1, it opens new window with an error instead of going to the selected Khan Academy topic.

{"error": "Can only handle default language changes through POST requests"}

System information

RACHEL Plus with most recent Content Pack cloned onto HDD

HARDWARE

= = = = = = = = = = = 2nd minor issue: On the Main RACHEL home page, there is a spelling error in the KA Lite menu.
The header "Econommics and finance" should have only one "m".

needlestack commented 7 years ago

Fixed that typo - thank you!

Sam - can we have the USB apply the kalite language patch as part of the update process? We should apply that patch in all cases as it doesn't disrupt anything else but is required for the latest kalite modules that allow for multi-language hosting...

spatiald commented 7 years ago

Sorry for the delay, will do. Can you add it as a github issue, add the next USB milestone, and add my name to it. I am away for a couple days.

L-Amstutz commented 7 years ago

I've used the updated USB Recovery 20161111 image with the method 4 to MOVE the KALite database on several RACHEL plus and then manually fixed the "api-view.py" and "rachel-index.php" spelling and language error issues, and they all work well. THANK YOU. Will there be a new USB Recovery version posted that incorporates these fixes?

spatiald commented 7 years ago

Yes, there will be a new Recovery USB that incorporates this issue's fixes; it will be posted today.

spatiald commented 7 years ago

The updated version can be downloaded here

MD5s: 8142ddb4e24ce79cfe66f85e87cd7962 RACHEL_Recovery_USB_1-2-16_9.1.1_20161205.img 79bf8e9130bfa5e6429db4b9a5c32357 RACHEL_Recovery_USB_1-2-16_9.1.1_20161205.img.zip