There are a few edge cases that will benefit from having watermark assigned on start:
- Test setups, to avoid creating temporary tables with fake schema
- Watermark repairs or complete watermark reset due to source versioning changes
Hence, the ideal scenario would be to add WatermarkProvider[Watermark] trait that will be injected in StreamBootstrapper (can be combined with SchemaProvider), and conditionally based on a flag in sinkSettings apply epoch watermark value to target. This change should include further unification of schema and watermarking evaluation interfaces on Reader class levels.