2015年5月16日のブックマーク (3件)

  • DBの自動連番がロールバックしても戻らない理由 - C Sharpens you up

    DBの主キーカラムに自動連番(MySQLならAUTO_INCREMENT、SQL ServerならIDENTITY、OracleやPostgreSQLならシーケンス)を設定していると、基的には連続した数字が付番されていくのですが、行削除もしていないのに抜け番が発生する場合があります。 INSERTが制約にひっかかって失敗した トランザクションをロールバックした などの場合です。 特にトランザクションのロールバックは、DB全体の変更をなかったことにするはずなのに連番だけは進んだまま戻らないということで、知らないと違和感があるものです。 連番が戻らない理由 PostgreSQLのドキュメントがこう説明しています。 同一のシーケンスから数値を取得する同時実行トランザクション同士のブロックを防止するため、nextval演算は決してロールバックされません。 http://www.postgresq

    DBの自動連番がロールバックしても戻らない理由 - C Sharpens you up
    rrreeeyyy
    rrreeeyyy 2015/05/16
  • Announcing Rust 1.0 | Rust Blog

    Today we are very proud to announce the 1.0 release of Rust, a new programming language aiming to make it easier to build reliable, efficient systems. Rust combines low-level control over performance with high-level convenience and safety guarantees. Better yet, it achieves these goals without requiring a garbage collector or runtime, making it possible to use Rust libraries as a "drop-in replacem

    Announcing Rust 1.0 | Rust Blog
    rrreeeyyy
    rrreeeyyy 2015/05/16
  • SitespecでRackアプリから静的サイトをつくる - Qiita

    Sitespec というGemを利用して、Rackアプリから静的サイト用のファイル群を生成する方法について説明します。 Sitespecとは Sitespecは、Rackアプリとrequest-specを利用して静的ファイルを生成するためのGemです。ここで言うrequest-specとは、RSpecでRackアプリに対してHTTPリクエストを送信し、アプリの振る舞いやレスポンスの内容を確かめるテストのことを指しています。Sitespecは、request-specで利用されたリクエストとレスポンスを元に、buildディレクトリの中に静的ファイルを生成します。GitHub Pagesなどを利用すれば、ここで生成された静的ファイル群をWebサイトとして公開できます。 よいところ Rackアプリの知見や道具を再利用できる Rackアプリを書けば静的サイトを構築できるため、これまで利用していたR

    SitespecでRackアプリから静的サイトをつくる - Qiita
    rrreeeyyy
    rrreeeyyy 2015/05/16