2016-11-01 12 views
1

BluemixでDashDBでejbTimer機能を使用すると、エラーが発生します。私たちはこの問題を分析し、ejbTimer機能が作成フェーズで一連のテーブル(WLPTASK、WLPPART、WLPPROP)を作成するという分析を思いつきました。これらは、 'ORGANIZE BY COLUMN'(DashDBのデフォルト)を前提としています。bluemixでDashDBを使用するejbTimer機能

回避策として、スタンドアロン(非クラウド)Libertyサーバーでこの機能を使用した場合、そのテーブルを作成できることがわかりました。そこからDDLを取り出し、 'ORGANIZE BY ROW'で調整してください。 DashDBで手動でテーブルを作成します。 Bluemixでこの機能を使用すると、テーブルを作成する必要がなくなり、手動で作成されたこれらのテーブルで作業することができます。

これは予想された動作ではないと想定しています。修正がありますか?

+0

スタンドアロン(非クラウド)環境でテーブルを作成する場合は、ここでもDashDBを使用していますか?それとも他のデータベースですか? –

+0

私はそれのためにダービーを使用しました。作成されたテーブルがクラッシュする前に、2つのテーブルがDashDBに作成されていたので、その情報をDerbyから得られたものと組み合わせるだけで十分でした。 – jarkko

答えて

2

この問題を回避するために行った作業は良好です。これが箱から出てこない理由は、LibertyがEclipseLink(ECL)を使用してEJBタイマー用のテーブルを作成し、ECLはDashDBを完全にサポートしていないからです。

ECLはすべての準拠のSQLおよびJDBCドライバをサポートしています。ただし、ECLは選択された一連のデータベースのスキーマ生成のみをサポートしています。残念ながら、DashDBはlist of databases that ECL supportsのスキーマ生成ではありません。

Derby用に生成されたDDLを手作業で編集し、その間にECLにDashDBスキーマ生成サポートを追加するには、open a Request For Enhancement(10分以下かかる)を手動で編集するこの回避策を引き続き使用することをお勧めします。

関連する問題