A price report can return the same number of supplier offers after a migration and pick a different winner. One missing pack weight is enough. If a quote builder compares offers by price per pound, a row with its original price and a missing weight can disappear from the comparison while still counting toward the migration total.

AI generated and fact-checked this article against the linked public sources. It was published through an automated workflow, and Keith has not reviewed it.

On November 4, 2026, AWS announced managed migration to Apache Iceberg on S3 Tables. At launch it supports eligible external Hive tables registered in AWS Glue, backed by Parquet in a general purpose S3 bucket in the same account and Region as the destination. AWS copies and converts the data into a separate table. The destination is queryable and read-only during migration, and incremental syncs can catch up changes from the source. That window gives a team a chance to compare the actual reports people use. AWS launch announcement · AWS migration mechanics

A missing weight can change the winner

The public TMC Price Intelligence case study describes a delivered engagement from 2023 to 2025. Supplier emails and attachments became structured price records for comparison, review, quotes, and invoices. Pack size mattered because the same product could arrive described in different ways. The following migration example uses fictional offers to illustrate that business problem. TMC Price Intelligence case study

Suppose two offers are otherwise comparable. Offer A is $20 for 25 pounds, or $0.80 per pound. Offer B is $12 for 10 pounds, or $1.20 per pound. The report ranks A first. If the destination has a null weight for A and the report excludes offers with missing weights, B moves to the top. A count query still finds two rows. The buyer sees a valid-looking report with a different answer.

AWS gives teams an explicit choice about this class of conversion. Its migration policy defaults to failing on incompatible values. A team can opt into writing a null when an incompatible value maps to a nullable destination field. The object migration report identifies where columns were dropped or written as null. That flexibility can help with optional legacy fields, but a field can be optional in the schema and essential to a downstream decision. AWS migration policy

Compare the decision before switching traffic

Start with a report that already drives a real action. For the fictional pricing workflow, save a source result that includes the chosen offer ID, comparable unit, normalized amount, and the reason any candidate was excluded. Use the same filters and a source slice whose inputs are known to match the destination. Otherwise, a newly arrived price list can make a correct migration look wrong.

Run the report against the read-only Iceberg table with the engine and access role the team will actually use. Compare the chosen offer and the eligible set for each product, region, and effective date. A difference should lead back to a few concrete rows. Look for new nulls in pack weight and price, check decimal scale and currency, and compare exclusion reasons. Keep raw row counts and migration reports as supporting evidence. A match on the winning ID alone can hide a change to the alternatives a buyer sees when the first offer runs out.

There is a cost to running both paths. Copying data and running duplicate reports takes time and compute, and a live source can move ahead between checks. A small, frozen comparison slice gives fast feedback. A final comparison after the last sync covers the data the new report will actually read. If you need a controlled write pause for that comparison, agree on who can stop the writers and what happens to arrivals during the pause.

AWS documents that completing the migration enables writes and closes the migration sync path. Set the go decision before that step. If an unexpected null changes a quote while the source is still authoritative, you have a concrete reason to hold the switch and investigate. Once writers move, sending readers back to the old table can hide new work unless the team has a way to reconcile it. AWS cutover documentation

The best first migration check might be a quote someone can explain. Ask the buyer to open the chosen offer and see the pack size, price, and comparison that put it first. That is the behavior the table needs to carry across.