func (tx *DbTransaction) GetAll(bucketName string, obj interface{}, appendFn func(o interface{}) (interface{}, error)) error {
    bucket := tx.tx.Bucket([]byte(bucketName))

    return bucket.ForEach(func(k []byte, v []byte) error {
        err := tx.conn.UnmarshalObject(v, obj)