Sdds 024 Yamaguchi Fix

SDDS data is printed on the outer edges of the film strip—cyan track on one side and magenta track on the other (or cyan on both in later releases). The data is encoded as a two-dimensional matrix of microscopic dots, resembling a barcode.

  • Integration tests
  • Load tests
  • Regression tests
  • For pointer update (pseudo):
    do 
      old = atomic_load(&index_ptr);
      if (!insert_entry_at(old)) break;
     while (!atomic_compare_exchange_weak(&index_ptr, &old, old + 1));
    
  • Added lock:
    std::scoped_lock lock(normalize_mutex);
    normalize_step(...);
    
  • systemctl start yamaguchi-writer
    systemctl start sdds-bridge
    yamaguchi-console --query "SELECT COUNT(*) FROM market_feed"  # Should return correct row count
    

    In some edge cases, the automated fix will exit with ERROR: unrecoverable cross-link. For these scenarios, use the manual reindex tool: sdds 024 yamaguchi fix

    sdds-reindex --force --new-hash-algo=robinhood --input corrupted_data.sdds --output rebuilt_data.sdds