Database & Order Recovery

Upgrade from qr-vehicleshop, check the database, and recover interrupted orders safely.

Resource
drs_vehicleshop
Version
v1.0.1-drs.8
Updated
Aug 30, 2026
View drs_vehicleshop resource View files on GitHub
Guide navigationDatabase & Order Recovery
Sections
01 / MIGRATION

Migration

Migrate an earlier QR installation

Back up the database and stop both shops. On the first start, the built-in upgrade can rename qr_vehicle_shop_orders and qr_vehicle_shop_plate_reservations to the DRS table names. The database account needs CREATE, ALTER, INDEX, DROP, and INSERT permission for this upgrade. Use the documented manual rename and qbox_drs_vehicle_columns.sql only after checking the current database structure. drs_vehicleshop.sql is for a new installation, not an upgrade.

02 / DATABASE AND RECOVERY

Database and recovery

Automatic schema checks

Startup adds missing compatibility columns without rebuilding player_vehicles, creates or upgrades personal and society journals, aligns plate collation, verifies InnoDB and indexes, and reconciles interrupted orders before checkout opens.

Conflicting legacy and DRS tables

If both identities exist, the migrator disables purchases and asks for manual reconciliation. Compare row ownership and index definitions; never delete or merge financial records based only on table age.

Restart behavior

The shop restores interrupted owned deliveries to stored state and removes only the entity recorded by that order. DRS Garages rebuilds its active cache by matching trusted plate/model rows instead of blanket-storing every live vehicle.

03 / TEST ORDER RECOVERY

Test order recovery

Verify purchase recovery

Interrupt a purchase on a private test server during delivery and while restarting the resource. Confirm the order log matches the exact plate and model, then stores the vehicle without charging twice or creating duplicate ownership, keys, or vehicles.

Monitor journal health

Treat committed results as authoritative, retain request ids across retries, and inspect any review-state row with the matching server, framework, bank, and garage history before staff changes it.

04 / DATABASE TROUBLESHOOTING

Database troubleshooting

Checkout remains disabled after startup

Read the first schema or journal readiness error in the server log. Check for both QR- and DRS-named tables, duplicate plates, incompatible indexes, missing schema privileges, or an unresolved migration before changing configuration.

An order is in a review state

Match the request, character, plate, and timestamp to the framework or society-bank transaction and the DRS Garages operation. Resolve the actual external outcome before marking, retrying, or refunding the journal row.